$v){ if(empty($v)){unset($arr[$k]);}}」。"/> $v){ if(empty($v)){unset($arr[$k]);}}」。">

ホームページ >バックエンド開発 >PHPの問題 >PHPで空の配列要素を削除する方法

PHPで空の配列要素を削除する方法

青灯夜游
青灯夜游オリジナル
2022-09-28 19:01:514033ブラウズ

2 つの削除方法: 1. array_filter() 関数を使用して配列をフィルタリングし、null 要素を削除します。構文は「array_filter($arr)」です。 2. foreach ステートメントを使用して連想配列をループし、ループ本体で empty() を使用して null 要素を特定し、unset() 関数を使用してキー名に基づいて要素を削除します。構文は "foreach( $arr as $k=>$v) {if(empty($v)){unset($arr[$k]);}}」。

PHPで空の配列要素を削除する方法

このチュートリアルの動作環境: Windows7 システム、PHP8.1 バージョン、DELL G3 コンピューター

方法 1 : 使用します array_filter() 関数は配列をフィルタリングし、空の値を持つ要素を削除します

コールバック関数としても知られる array_filter() 関数は、配列の要素をフィルタリングするために使用されます。ユーザー定義関数を使用します。配列内の各値を反復処理し、それらをユーザー定義関数またはコールバック関数に渡します。

array_filter() 関数を使用してコールバック関数を宣言すると、偽の値 (null 値) が削除されますが、コールバック関数が指定されていない場合は、値が等しい配列内のすべての要素が削除されます。 null などの FALSE にすると、文字列または NULL 値が削除されます。

実装コード

function f($arr){
	$newarr = array_filter($arr); 
	echo "过滤后的数组:";
	var_dump($newarr);
}

f($arr)関数の呼び出し

$arr = array(11,'',null,12,false,0); 
var_dump($arr);
f($arr);

PHPで空の配列要素を削除する方法

方法 2: foreach ステートメント empty() 関数 unset() 関数

  • foreach ステートメントを使用して配列をループする

  • ループ本体では、empty()を使って配列要素が空かどうかを1つずつ判定し、unset()関数を使ってキー名に基づいて空の値を削除します

実装コード:

<?php
header("Content-type:text/html;charset=utf-8");
function f($arr){
	foreach ($arr as $k=>$v){
	    if(empty($v)){
			unset($arr[$k]);  
		}
	}

	echo "过滤后的数组:";
	var_dump($arr);
}


$arr = array(11,&#39;1&#39;,&#39;&#39;,&#39; &#39;,&#39;0&#39;,&#39;0.0&#39;,0.0,null,12,false,0); 
var_dump($arr);
f($arr);
?>

PHPで空の配列要素を削除する方法

関数の説明:

empty() この関数は、変数が空かどうかを確認するために使用されます。

empty() 変数が空であるとみなされるかどうかを判断します。変数が存在しない場合、またはその値が FALSE に等しい場合、その変数は存在しないとみなされます。 empty() は、変数が存在しない場合に警告を生成しません。

次の値は empty() によって空とみなされます:

  • "" (空の文字列)

  • 0 (整数としての 0)

  • 0.0 (浮動小数点数としての 0)

  • "0" (文字列としての 0)

  • NULL

  • FALSE

  • ##array() (空の配列)

  • $var; (宣言されているが値のない変数)

unset() この関数は、指定された変数を破棄するために使用されます。

推奨学習: 「

PHP ビデオ チュートリアル

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

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