thinkphp合并数组问题
发布网友
发布时间:2022-04-20 11:20
我来回答
共2个回答
热心网友
时间:2023-09-13 01:25
array_push将指定的值添加到某数组的结尾,返回添加后的数组长度,并不是新数组的值
$a = array('0','1');
$b = array_push($a,"2"); //$b是新添加后数组的长度
var_mp($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_mp($b); //输出还是数组的长度
var_mp($a);
//输出:
array (size=3)
0 => string '0' (length=1)
1 => string '1' (length=1)
2 =>
array (size=1)
'name' => string '小明' (length=6)
热心网友
时间:2023-09-13 01:26
你输出的是$b吧 array_push()该函数返回的是新数组的长度
print_r($a); 输出就是你要的数组!追问不是这问题,array_push添加"小明"可以,但是如果添加name=>"小明"就不行了
追答查询手册看array_push()函数的参数返回值等。
如果只是给$a中添加一个元素 可以用直接赋值,提高效率!
如果是合并两个有多个元素的数组 并且确定键值不重复,用array_merge()函数 合并数组