>  기사  >  php教程  >  数组函数解决方案

数组函数解决方案

WBOY
WBOY원래의
2016-06-06 19:41:291244검색

数组函数 $arr=array('a','b','c'); shuffle($arr); var_dump($arr); 这样这个数组就打乱了。 shuffle($arr=array('a','b','c')); var_dump($arr); 这样就不好使,没打乱。两者不是一样的吗?怎么会效果不一样呢? ------解决思路---------------------- 从值

数组函数
$arr = array('a','b','c');<br />
shuffle($arr);<br />
var_dump($arr);

这样这个数组就打乱了。
<br />
shuffle($arr = array('a','b','c'));<br />
var_dump($arr);

这样就不好使,没打乱。两者不是一样的吗?怎么会效果不一样呢?
------解决思路----------------------
从值上看,两者是相同的
但从载体上看,两者是有区别的
shuffle($arr = array('a','b','c')); 中
$arr = array('a','b','c') 是表达式,返回的是表达式的值
而 shuffle 需要传递一个实体的变量引用,而表达式是不能传引用的

其实在 php5.3 之前并没有这个约束的
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.