ホームページ >バックエンド開発 >PHPチュートリアル >PHP で順次配列と連想配列を区別するにはどうすればよいですか?
PHP では、配列は本質的に連想であり、0 から始まる数値キーを区別する組み込みメカニズムがありません (シーケンシャル配列)と任意の文字列キー(連想配列)。この区別は、さまざまなプログラミング シナリオにとって重要です。
配列がシーケンシャルであるかどうかを判断するには、PHP 8.1 で新しく導入された array_is_list() 関数を利用できます。ただし、古い PHP バージョンの場合は、カスタム関数が実用的な代替手段を提供できます。
function array_is_list(array $arr) { if ($arr === []) { return true; } return array_keys($arr) === range(0, count($arr) - 1); }
この関数は、配列が空かどうか、またはそのキーが 0 から始まる連続した数値シーケンスであるかどうかをチェックします。両方の条件が満たされている場合、
array_is_list() の機能を説明するには関数:
var_dump(array_is_list([])); // true var_dump(array_is_list(['a', 'b', 'c'])); // true var_dump(array_is_list(["0" => 'a', "1" => 'b', "2" => 'c'])); // true var_dump(array_is_list(["1" => 'a', "0" => 'b', "2" => 'c'])); // false var_dump(array_is_list(["a" => 'a', "b" => 'b', "c" => 'c'])); // false
以上がPHP で順次配列と連想配列を区別するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。