Heim  >  Artikel  >  Backend-Entwicklung  >  (array)$arr,这样的用法有什么作用?

(array)$arr,这样的用法有什么作用?

WBOY
WBOYOriginal
2016-06-06 20:25:211329Durchsuche

这算是个很基础的问题吧,可是我还是有点不明白。(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>

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

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn