php method to delete an element in an array: use the foreach and unset() functions to delete a specific element in the array, the syntax "foreach($array as $k=>$v){if($ v == 'array element value'){unset($array[$k]):}}".
Recommended: "PHP Video Tutorial"
In some special cases, you need to delete specific items in the array value, and delete them all. In fact, there are many methods. We will discuss them through this article.
1. Use the foreach and unset() functions to delete specific elements in the array
foreach($array as $k=>$v){ if($v == 'day'){ unset($array[$k]): } }
The unset() function deletes the specified array value.
2. Use array_flip() function and unset() function to delete specific values in the array
$arr = array_flip($arr); unset($arr['world']); $arr = array_flip($arr); print_r($arr);
array_flip() is an inversion function that changes the original value of the array to The key name becomes the key value, and the key value becomes the key name, so that the above operation is easy to understand.
3. Use the array_search() and unset() functions to delete specific values in the array
if(($key = array_search('day',$arr))){ unset($arr[$key]); }
array_search() function is the same as in_array(), searching in the array A key value. If the value is found, the key of the matching element is returned. If not found, returns false.
4. The array_splice() function can play the same role as the unset() function
if(($key = array_search('day',$arr))){ array_splice($arr, $key,1); }
array_splice() has four parameters. Please see here for usage.
5. array_unique() allows this specific value to be left in the array
Note: All the above operations only delete the first one in the array and the one you gave Elements with the same specified value, subsequent elements will not be deleted even if they are equal to the value you specified!
Before performing all the above code operations, first perform the array_unique($array) operation to merge and delete the duplicate values in the array, and then perform the above deletion so that no duplicate values in the array are left. .
6. Only delete the key value corresponding to the specific value, leaving other values untouched
In the fifth step, while the specific value is deleted, other irrelevant values are also merged. , then what should we do if we don’t touch other values? Just repeat the operations one to four above. To get the array length, use a for loop. Of course, this is the stupidest way~~
The function to get the array length is count($arr)
for(count($arr))if($key = array_search('day',$arr))array_splice($arr,$key,1);
Related recommendations: php training
The above is the detailed content of How to delete a specific element in an array in php?. For more information, please follow other related articles on the PHP Chinese website!