Home > Article > Backend Development > (array)$arr,这样的用法有什么作用?
这算是个很基础的问题吧,可是我还是有点不明白。(array)$arr
,这算是快速定义了arr为一个数组了吗?可是如果这样写(array)$arr;var_dump($arr);
php还是会报错啊而且打印出来的也不是空数组,类似的还有(int)$i,这些到底有什么用?别见笑。。。。
这算是个很基础的问题吧,可是我还是有点不明白。(array)$arr
,这算是快速定义了arr为一个数组了吗?可是如果这样写(array)$arr;var_dump($arr);
php还是会报错啊而且打印出来的也不是空数组,类似的还有(int)$i,这些到底有什么用?别见笑。。。。
楼主自己执行一下以下代码就知道了
<code>$a = 1; $b = (array)$a; var_dump($b);</code>
<code>$a = 'test'; $b = (array)$a; var_dump($b);</code>
<code>$a = new stdClass(); $a->key = 'value'; $b = (array)$a; var_dump($b);</code>
类型转换,很基础的问题。
新手建议文档看三遍,书看三遍
是php的一种强制转换方法。
(int),(integer) - 转换成整型
(bool),(boolean) - 转换成布尔型
(float),(double),(real) - 转换成浮点型
(string) - 转换成字符串
(array) - 转换成数组
(object) - 转换成对象
(array)$arr;var_dump($arr);
报错是因为你没初始化变量,这个很奇怪,哈哈,不要太在意。
还能用
<code>settype( mixed var, string type ); intval(mixed var);</code>
这类的去转换,手册上可能没。但是百度谷歌很多。建议新手优先搜搜。可能更学的会