ホームページ  >  記事  >  バックエンド開発  >  unset、array_splice を使用して配列内の要素を削除する方法

unset、array_splice を使用して配列内の要素を削除する方法

伊谢尔伦
伊谢尔伦オリジナル
2017-06-24 09:30:381199ブラウズ

php での 配列要素の削除は非常に簡単ですが、配列の削除には インデックス のソートが必要になる場合があります。ここでは、配列を削除するための unset array_splice の使用方法を紹介します。要素間の違い配列内の要素を削除したい場合は、 unset を直接使用できますが、配列のインデックスは再配置されません:

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

結果は次のようになります:

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

では、欠落している要素を削除するにはどうすればよいですか?要素が埋められ、配列のインデックスが再作成されますか?答えは 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); 
?>

結果は次の通りです:

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

配列内の特定の要素を削除

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

空の配列を補足的に削除

例:

<?php
  $array = (&#39;a&#39; => "abc", &#39;b&#39; => "bcd",&#39;c&#39; =>"cde",&#39;d&#39; =>"def",&#39;e&#39;=>"");
  array_filter($array);
  echo "<pre class="brush:php;toolbar:false">";
  print_r($array);
?>

結果:

Array ( 
     [a] => abc 
     [b] => bcd 
     [c] => cde 
    [d] => def
)

概要 If the

array_splice( ) 関数は配列を削除します。インデックス値も変更されます。

unset()関数を削除しても配列のインデックス値は変わりません。

以上がunset、array_splice を使用して配列内の要素を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。