[英]Unset value from array by value, not key
我有以下數組:
Array (
[0] => 1
[1] => 2
[2] => 2
[3] => 4
[4] => 4
[5] => 8)
我想刪除數組的某些項,但要刪除值,而不要刪除鍵。 如果要刪除所有值為“ 4”或值為“ x”的項目,該怎么辦?
$key = array_search(4, $arr);
unset($arr[$key]);
如果數組中出現的值不止一次,請使用array_keys
:
$keys = array_keys($arr, 4);
foreach ($keys as $k)
unset($arr[$k]);
您可以這樣嘗試:
<?php
$data = array('haha', 'hehe', 'hihi', 'gtfo', 'hoho', 'huhu');
$data = preg_grep('/^(?!gtfo).*$/', $data);
print_r($data);
?>
輸出:
Array
(
[0] => haha
[1] => hehe
[2] => hihi
[4] => hoho
[5] => huhu
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.