[英]php array unset not working
我有一個稱為“值”的多維數組。 這就是var_dump($values)
現在的樣子。
array(1) {
[0]=> array(3) {
["content"]=> array(1) {
["items"]=> array(4) {
[0]=> string(4) "3121"
[1]=> string(4) "3116"
[2]=> string(4) "3115"
[3]=> string(4) "3114"
}
}
["options"]=> array(8) {
["title"]=> string(7) "inherit"
["size"]=> string(4) "tiny"
["orderby"]=> string(4) "date"
["order"]=> string(4) "desc"
["filter"]=> string(8) "category"
["pagination"]=> bool(false)
["per_page"]=> int(12)
["content"]=> array(3) {
[0]=> string(5) "title"
[1]=> string(7) "excerpt"
[2]=> string(4) "tags"
}
}
["__version"]=> string(5) "2.3.1"
}
}
這是我用來取消設置值的代碼
//before unset
var_dump($values);
$ID = "3121";
foreach ($values as $value) {
foreach($value['content']['items'] as $key => $val) {
if($val == $ID) {
unset($value['content']['items'][$key]);
}
}
}
//after unset
var_dump($values);
即使未設置,我的var_dump也看起來相同。 我認為未設置數組無法正常工作。 有人可以告訴我我的代碼有什么問題嗎?
您沒有在for循環中放入$key
變量,並且要更改值,您必須使用引用
foreach ($values as &$value) {
foreach($value['content']['items'] as $key => $val) {
if($val == $ID) {
unset($value['content']['items'][$key]);
}
}
}
foreach ($values as &$value)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.