PHP推送和循环对象数组
我想向我的对象数组添加一个新索引,并能够循环和检索添加的新索引 当前我的对象数组如下所示:PHP推送和循环对象数组,php,arrays,Php,Arrays,我想向我的对象数组添加一个新索引,并能够循环和检索添加的新索引 当前我的对象数组如下所示: Array ([0] => stdClass Object ([id] => 4 [date] => 2014-09-08 10:18:10 [status] => 1) ) 所以,要循环它,我只需要: foreach($content as $item){ echo $item->id; } 但是,出于某些原因,我需要将新元素
Array ([0] =>
stdClass Object ([id] => 4 [date] => 2014-09-08 10:18:10 [status] => 1)
)
所以,要循环它,我只需要:
foreach($content as $item){
echo $item->id;
}
但是,出于某些原因,我需要将新元素推送到数组中:
$item = $data['content']; // $data holds the content above
$clone = array();
foreach($item as $row){
if($row->status == 1){
array_push($clone, $row, array("delete" => TRUE));
}else{
array_push($clone, $row, array("delete" => FALSE));
}
}
$item = $clone;
输出是这样的:
Array ( [0] =>
stdClass Object ([id] => 4 [date] => 2014-09-08 10:18:10 [status] => 1) [1] => Array ( [delete] => 1)
)
但是我想要的是
Array ( [0] =>
stdClass Object ([id] => 4 [date] => 2014-09-08 10:18:10 [status] => 1 [delete] => 1)
)
我还尝试:
$item[] = (object) array("delete" => FALSE);
但问题依然存在。这就足够了:
foreach($item as $row) {
$row->delete = ($row->status == 1);
}
这就足够了:
foreach($item as $row) {
$row->delete = ($row->status == 1);
}
这就足够了:
foreach($item as $row) {
$row->delete = ($row->status == 1);
}
这就足够了:
foreach($item as $row) {
$row->delete = ($row->status == 1);
}
它是对象,所以将变量设置为对象变量
foreach($item as $row)
$row->delete = $row->status ? true : false;
它是对象,所以将变量设置为对象变量
foreach($item as $row)
$row->delete = $row->status ? true : false;
它是对象,所以将变量设置为对象变量
foreach($item as $row)
$row->delete = $row->status ? true : false;
它是对象,所以将变量设置为对象变量
foreach($item as $row)
$row->delete = $row->status ? true : false;
这是错误的,它不会修改数组,因为没有引用,并且当状态不等于1时,它不会将delete属性放在object上。@Robert无需使用reference
&
objects@Robertups抱歉我错过了OP想要设置“false”的事实还有,是的,你是对的,我的refreference不好:)现在,在你更改assignment之后,它就可以了。这是错误的,它不会修改数组,因为没有reference,当status不等于1时,它也不会将delete属性放在object上。@Robert不需要使用reference&
objects@Robertups抱歉我错过了OP想要设置“false”的事实还有,是的,你是对的,我的refreference不好:)现在,在你更改assignment之后,它就可以了。这是错误的,它不会修改数组,因为没有reference,当status不等于1时,它也不会将delete属性放在object上。@Robert不需要使用reference&
objects@Robertups抱歉我错过了OP想要设置“false”的事实还有,是的,你是对的,我的refreference不好:)现在,在你更改assignment之后,它就可以了。这是错误的,它不会修改数组,因为没有reference,当status不等于1时,它也不会将delete属性放在object上。@Robert不需要使用reference&
objects@Robertups抱歉我错过了OP想要设置“false”的事实还有,是的,你是对的,我对参考文献的不好:)现在,在你改变分配之后,一切都好了。