php - (array)$arr,这样的用法有什么作用?
阿神
阿神 2017-04-10 16:15:45
[PHP讨论组]

这算是个很基础的问题吧,可是我还是有点不明白。(array)$arr,这算是快速定义了arr为一个数组了吗?可是如果这样写(array)$arr;var_dump($arr);php还是会报错啊而且打印出来的也不是空数组,类似的还有(int)$i,这些到底有什么用?别见笑。。。。

阿神
阿神

闭关修行中......

全部回复(3)
高洛峰

楼主自己执行一下以下代码就知道了

$a = 1;
$b = (array)$a;
var_dump($b);
$a = 'test';
$b = (array)$a;
var_dump($b);
$a = new stdClass();
$a->key = 'value';
$b = (array)$a;
var_dump($b);
阿神

类型转换,很基础的问题。

新手建议文档看三遍,书看三遍

大家讲道理

是php的一种强制转换方法。

(int),(integer) - 转换成整型
(bool),(boolean) - 转换成布尔型
(float),(double),(real) - 转换成浮点型
(string) - 转换成字符串
(array) - 转换成数组
(object) - 转换成对象

(array)$arr;var_dump($arr);报错是因为你没初始化变量,这个很奇怪,哈哈,不要太在意。
还能用

settype( mixed var, string type );
intval(mixed var);

这类的去转换,手册上可能没。但是百度谷歌很多。建议新手优先搜搜。可能更学的会

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号