PHP では、通常の配列添字は変数ではなく、固定的に定義された文字列または数値である必要があります。
たとえば、次のコードは正しくありません:
$index = 'name'; $array = []; $array[$index] = 'John';
上記の例では、配列 $array# にインデックスがないため、「未定義のインデックス」というエラーが表示されます。
##$index という名前のインデックスが存在します。
{} によって変数を添え字の値として使用することです。例:
$index = 'name'; $array = []; $array[$index] = 'John'; $array2 = []; $array2["{$index}"] = 'John';上記のコードは正常に動作します。どちらも
'John' を
$array と
$array2 として持ちます。 array
"name" この添字の値。
variable variable を使用します。変数名
#$ 変数を参照するためのシンボル。例:
$index = 'name'; $$index = 'John'; echo $name;上記のコードでは、動的変数の定義と使用が実装されています。
$$index は
$name の省略形として見られ、値
'John' と
echo $name## が割り当てられます。 #'John'
が出力されます。
を使用すると、プログラムをより動的にすることができますが、コードの理解や保守が難しくなる可能性もあるため、使用には注意が必要です。 つまり、PHP の配列添字では変数を使用できませんが、
または variable variable
を通じて変数を添字の値として使用できます。
以上がPHPの配列添字に変数は使えないのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。