ホームページ > バックエンド開発 > PHPチュートリアル > unset、array_splice を使用して配列内の要素を削除する方法

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

伊谢尔伦
リリース: 2023-03-11 09:30:01
オリジナル
1215 人が閲覧しました

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 サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート