以前は、配列から空の値を削除する場合、foreach または while を使用して、配列内の空の要素を削除しました。簡単なコードは次のとおりです。私自身はかなり良いと感じていますが、これは以前に試したことがあります。まず、$arr をオブジェクトに変換し、そのオブジェクトの特性を使用して、現在操作されている配列をコピーします。 . foreach を実行するたびに変数がコピーされます。ページ内に foreach が多すぎると、大きな消費になります。
インターネットを徘徊していたら、array_filter
の使用を提案している人を見て驚きました。説明書を開いて見てみると、宝の山を守っていたが使い方が分からなかった。array_filter関数の機能は、callback関数
を使用して配列をフィルタリングすることです。コールバック関数を使用して処理できるとずっと思っていましたが、マニュアルにはその文がありませんでした。コールバック関数がない場合、デフォルト値は false のプロジェクトで配列を削除します。<?php foreach( $arr as $k=>$v){ if( !$v ) unset( $arr[$k] ); } ?>出力値は次のとおりです:
<?php $entry = array( 0 => 'foo', 1 => false, 2 => -1, 3 => null, 4 => '' ); print_r(array_filter($entry)); ?>今後もマニュアルをもっと読む必要があるようです...
array_slice
と同じように、これも良いことです。残念ながら今まで気付かなかったです。コードをコピーします
コードは次のとおりです:Array ( [0] => foo [2] => -1 )配列 $rsArray に格納される値は次のとおりです: A B C Darray_values() 関数は、すべてのキー値を含む配列を返します指定された配列では、キー名は保持されません。 array_diff() 関数は 2 つの配列の差分配列を返します。この配列には、比較対象の配列内にあるが、他のパラメーター配列には含まれていないすべてのキーが含まれます。 array_unique() 関数は、配列から重複する値を削除し、結果の配列を返します。複数の配列要素の値が等しい場合、最初の要素のみが保持され、他の要素は削除されます。 返された配列内のキー名は変更されません。
array_merge
() 関数は、2 つ以上の配列を 1 つの配列にマージします。以上がPHPで配列内のnull値インスタンスを削除する方法を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。