我有一個數組像這樣後:PHP - 如何刪除數組的所有元素之一所指定
陣列([740073] => Leetee貓1 [720102] =>貓1 SUBCAT 1 [730106 ] => subsubcat [740107] =>和另一[730109] =>測試貓)
我想刪除與 '720102' 的一個關鍵元素後落入本數組的所有元素。因此,陣列將成爲:
陣列([740073] => Leetee貓1 [720102] =>貓1 SUBCAT 1)
我將如何實現這一目標?我只有belw那麼遠,
foreach ($category as $cat_id => $cat){
if ($cat_id == $cat_parent_id){
//remove this element in array and all elements that come after it
}
}
[編輯]第1回答似乎在大多數情況下,但不是所有的工作。如果原始數組中只有兩個項目,它只會刪除第一個元素,而不是後面的元素。如果只有兩個元素
陣列([740073] => Leetee貓1 [740102] =>貓1 SUBCAT 1)
變得
陣列([740073] => [740102] => cat 1 subcat 1)
這是爲什麼?這似乎是隻要$位置爲0
這似乎在大多數情況下工作,但不是全部。請參閱編輯原始郵件,其中顯示不起作用的示例。 – LeeTee
好的,awnswer是正確的,但是如果$ position = 0就有問題。需要寫($ position!== FALSE)而不是if($ position)。謝謝 – LeeTee
對不起。這很有道理。 ;)我會修復上面的答案。 –