咨询关于在php中array_push()函数的一些问题,具体如下

我有个数组$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 为添加到数组中的新元素

白衣非少年
浏览 215回答 2
2回答

幕布斯7119047

array_push函数第二个参数提供的是压入的值,该函数并没有提供设置键的参数,因此键会采用数字。上例不适合用array_push函数,应该用普通的赋值语句来实现:$room['delete_sosuo']['days']=$days;

守候你守候我

int array_push ( array &$array , mixed $var [, mixed $... ] )array_push() 将 array 当成一个栈,并将传入的变量压入 array 的末尾。array 的长度将根据入栈变量的数目增加。和如下效果相同:<?php$array[] = $var;?>并对每个 var 重复以上动作。返回数组新的单元总数。
打开App,查看更多内容
随时随地看视频慕课网APP