array_push将指定的值添加到某数组的结尾,返回添加后的数组长度,并不是新数组的值
$a = array('0','1');
$b = array_push($a,"2"); //$b是新添加后数组的长度
var_dump($a); //此时打印$a
//输出:
array (size=3)
0 => string '0' (length=1)
1 => string '1' (length=1)
2 => string '2' (length=1)
追问不是这问题,array_push添加"小明"可以,但是如果添加name=>"小明"就不行了
追答它后面添加的值要么是一个字符串,要么是一个数组:
$a = array('0','1');
$b = array_push($a,array('name'=>'小明'));
var_dump($b); //输出还是数组的长度
var_dump($a);
//输出:
array (size=3)
0 => string '0' (length=1)
1 => string '1' (length=1)
2 =>
array (size=1)
'name' => string '小明' (length=6)