[英]php removing an element from objects
因此,我有以下数据库结果:
Array
(
[0] => stdClass Object
(
[id] => 1
[user] => 1
[img] => 2016/02/img_8488.jpg
[url] => /p=?44
[sent_date] => 2016-02-13 00:00:00
)
[1] => stdClass Object
(
[id] => 2
[user] => 185
[img] =>
[url] => /?p=54
[sent_date] => 2016-02-06 00:00:00
)
)
如何从查询结果中删除[id]
和[sent_date]
?
我不确定我是否使用未设置的权利。
unset($results[0]['id']);
$reindex = array_values($results);
$objectarray = $reindex;
使用unset($results[0]->id);
并unset($results[0]->sent_date)
,它应该可以工作。 如果要在所有数组对象中执行此操作:
for($i = 0; $i<sizeof($results); $i++)
{
unset($results[$i]->id);
unset($results[$i]->sent_date);
}
可以删除或取消设置而不是创建一个新数组。
$i = 0;
$newResult = array();
foreach($result as $value){
$newResult[$i]["user"] = $value->user;
$newResult[$i]["img"] = $value->img;
$newResult[$i]["url"] = $value->url;
$i++;
}
print_r($newResult);
$newResult
将返回新数组,并且原始数组保持不变,可以根据需要使用它。
否则必须删除索引,然后才能在foreach循环中使用unset,如下所示:
unset($value->id);
unset($value->sent_date);
旁注 :
另外请记住,您不能将其用作$value["id"]
因为它的属性不是数组索引。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.