ホームページ >バックエンド開発 >PHPチュートリアル >PHPテクニックを使用して1次元配列内の特定の値要素を削除する方法
次のエディターは、PHP で 1 次元配列内の特定の値要素を削除する方法に関する記事を共有します。これは優れた参考値であり、皆様のお役に立てば幸いです。エディターに従って見てみましょう。
1. 独自の for ループを作成します。
$tmp 要素の値を配列
<?php $tmp = '324'; $arr = array( '0' => '321', '1' => '322', '2' => '323', '3' => '324', '4' => '325', '5' => '326', );
#Code
foreach( $arr as $k=>$v) { if($tmp == $v) unset($arr[$k]); } print_r($arr); ?>#at今回
Array ( [0] => 321 [1] => 322 [2] => 323 [4] => 325 [5] => 326 )インデックスをリセットするには、
foreach( $arr as $k=>$v) { if($tmp == $v) unset($arr[$k]); } $arr = array_values($arr); print_r($arr); ?>
# を追加します
##このときの結果
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )
array_merge()でも同じ効果が得られます
foreach( $arr as $k=>$v) { if($tmp == $v) unset($arr[$k]); } $arr = array_merge($arr); print_r($arr); ?>#今回の結果
##
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )2 .PHP に付属の関数を使用することをお勧めします。これらの関数は C で実装されており、自分で記述するよりも効率的であるためです。
array_search と array_splice を使用します。array_splice はシーケンス値を自動的にリセットします。
$key=array_search($tmp ,$arr); array_splice($arr,$key,1); var_dump($arr);
今回の結果
Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )
ベスト プラクティス
##$arr = array_merge(array_diff($arr, array($tmp))); var_dump($arr);
#結果
##Array ( [0] => 321 [1] => 322 [2] => 323 [3] => 325 [4] => 326 )#ここで、配列要素が複雑なデータ構造であれば比較も可能です。もちろん、データ自体は依然として 1 次元です。
上記の例では、$tmp が値です。$tmp が配列またはその他の複雑なデータ構造の場合、$tmp に含まれるすべての要素を $array から削除します。
$arr = array_merge(array_diff($arr, $tmp)); var_dump($arr);1 次元配列内の特定の値要素を削除する上記の PHP メソッドは、エディターで共有されるすべての内容ですので、参考にしていただければ幸いです。 php 中国語 Web サイトもサポートしていただければ幸いです。
#興味があるかもしれない記事:
PHP は写真の逆色処理機能を実装しますphp スキルを説明する pecl メソッドを使用した拡張機能の php インストールの例
php 学習ノート: mb_strstr の基本的な使い方 php スキル
以上がPHPテクニックを使用して1次元配列内の特定の値要素を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。