我有个数组$room['delete_sosuo'],我直接用print_r()打印这个数组是这样显示的:Array ( [0] => stdClass Object ( [id] => 3 [card] => 13102419880808 [name] => 安安 [tel] => 15932643 [room_sort] => 1 [room_num] => 1001 [start_date] => 2010-11-13 [order_money] => 100 ) )然后现在我想把一个新的元素添加到这个数组里面:[days]=>$days为要添加的新元素。我的代码:array_push($room['delete_sosuo'],"[days]=>$days");这样添加的的结果显示为这样:Array ( [0] => stdClass Object ( [id] => 3 [card] => 13102419880808 [name] => 安安 [tel] => 15932643 [room_sort] => 1 [room_num] => 1001 [start_date] => 2010-11-13 [order_money] => 100 ) [1] => [days]=>15 Hours, 39 Minutes ) 红色为添加到数组中的新元素,按理说这样插入是正确的。可是我想要的结果是下面这样的,要怎么插入呢??Array ( [0] => stdClass Object ( [id] => 3 [card] => 13102419880808 [name] => 安安 [tel] => 15932643 [room_sort] => 1 [room_num] => 1001 [start_date] => 2010-11-13 [order_money] => 100 [days]=>15 Hours, 39 Minutes ))红色为添加到数组中的新元素 这句写错了 应该为 [1] => [days]=>15 Hours, 39 Minutes 为添加到数组中的新元素
2 回答

幕布斯7119047
TA贡献1794条经验 获得超8个赞
array_push函数第二个参数提供的是压入的值,该函数并没有提供设置键的参数,因此键会采用数字。
上例不适合用array_push函数,应该用普通的赋值语句来实现:
$room['delete_sosuo']['days']=$days;

守候你守候我
TA贡献1802条经验 获得超10个赞
int array_push ( array &$array , mixed $var [, mixed $... ] )
array_push() 将 array 当成一个栈,并将传入的变量压入 array 的末尾。array 的长度将根据入栈变量的数目增加。和如下效果相同:
<?php
$array[] = $var;
?>
并对每个 var 重复以上动作。
返回数组新的单元总数。
- 2 回答
- 0 关注
- 214 浏览
添加回答
举报
0/150
提交
取消