我遍历一个对象数组,并希望根据它的'id'属性删除其中一个对象,但我的代码不起作用.
foreach($array as $element) {
foreach($element as $key => $value) {
if($key == 'id' && $value == 'searched_value'){
//delete this particular object from the $array
unset($element);//this doesn't work
unset($array,$element);//neither does this
}
}
}
Run Code Online (Sandbox Code Playgroud)
有什么建议.谢谢.
我有一个变量,它是分页对象
$pagination
Run Code Online (Sandbox Code Playgroud)
我正在使用转换来改变它里面的东西
$pagination->getCollection()->transform(function ($item, $key) use(&$data, &$pagination) {
$item->foo = 'bar';
}
Run Code Online (Sandbox Code Playgroud)
如果某个项目满足特定条件,我想从分页中删除该项目。在我能够使用这些数据之前,我不想将其删除。下面是一个例子。
$pagination->getCollection()->transform(function ($item, $key) use(&$data, &$pagination) {
$data[] = $item->foo;
if ($item->foo === 'bar') {
$item->remove();
}
}
Run Code Online (Sandbox Code Playgroud)
我也尝试过$pagination->getCollection()->forget($key);在转换内部使用
$pagination->getCollection()->transform(function ($item, $key) use(&$data, &$pagination) {
$data[] = $item->foo;
if ($item->foo === 'bar') {
$pagination->getCollection()->forget($key);
}
}
Run Code Online (Sandbox Code Playgroud)
就是从这个问题来的。
我猜我正在处理分页的事实可能会使这些答案不适用于我的情况。
我有数据如下:
[
{
"id": "3",
"title": "Boruto's Photo",
"is_lottery": 1,
"price": 10
},
{
"id": "4",
"title": "Misuki's Photo",
"is_lottery": 0,
"price": 20
}
]
Run Code Online (Sandbox Code Playgroud)
我想过滤哪个 is_lottery == false 从此集合中删除价格键。输出是:
[
{
"id": "3",
"title": "Boruto's Photo",
"is_lottery": 1,
"price": 10
},
{
"id": "4",
"title": "Misuki's Photo",
"is_lottery": 0,
}
]
Run Code Online (Sandbox Code Playgroud)