Home >Backend Development >PHP Tutorial >PHP: Detailed explanation of usage differences of unset and array_splice with examples

PHP: Detailed explanation of usage differences of unset and array_splice with examples

伊谢尔伦
伊谢尔伦Original
2017-06-24 09:57:461188browse

Deleting array elements in php is very simple, but sometimes deleting an array requires some sorting of the index. We will use the relevant functions , here we will introduce the difference between using unset,array_spliceDelete elements in an array

If you want to delete an element in an array, you can directly Use unset, but the index of the array will not be rearranged:

<?php 
$arr = array(&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;);
unset($arr[1]);
print_r($arr);
?>

The result is:

Array ( [0] = > a [2] => c [3] => d )

##So how can the missing elements be filled and the array re-indexed? Woolen cloth? The answer is array_splice():

<?php 
$arr = array(&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;); 
array_splice($arr,1,1); 
print_r($arr); 
?>

The result is:

##Array ( [0] => a [ 1] => c [2] => d )

Delete specific elements in the array

<?php
$arr2 = array(1,3, 5,7,8);
foreach ($arr2 as $key=>$value){  
    if ($value === 3)    
    unset($arr2[$key]);
}
var_dump($arr2);
?>

Supplementary deletion of empty array

Example:

2d903c7972d20488b7f8b94c98f42f59 "abc", 'b' => "bcd",'c' =>"cde",'d' =>"def",'e'=>"");  
array_filter($array);  
echo "e03b848252eb9375d56be284e690e873";  
print_r($array);
?>

Result:

Array (

[a] => abc

[b] => bcd

## [c] => cde

[d] => def

)

Summary

If the array_splice() function is deleted, the index value of the array will also change.

If the unset() function is deleted, the index value of the array will not change.

The above is the detailed content of PHP: Detailed explanation of usage differences of unset and array_splice with examples. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn