3

PHP で次のような特定のセルをエコーする理由をお聞きしたいと思います。

echo "$array[0][0]";

Array[0] のようなものを取得し、次のようにエコーすると:

echo $array[0][0];

価値をとります。好奇心旺盛で、理由がわかりません。:/

4

2 に答える 2

2

単純な文字列補間構文により、1 レベルの配列を解釈できます。

"foo $array[0] bar"

これは、文字列リテラル内の変数の値を評価します。これは、連結演算子 ( ) を何度も入力する手間を省く便利な機能です'foo ' . $array[0] . ' bar'

ネストされた式を許可する複雑な文字列補間構文もあります。

"foo {$array[0][0]} bar"

http://php.net/manual/en/language.types.string.php#language.types.string.parsingを参照してください。

一方で:

echo $array[0][0];

これは、文字列補間規則の特定の制限なしで、アクセスされることを意図したとおりに配列値に直接アクセスします。

于 2013-08-26T13:22:31.363 に答える
1

を使用すれば変数を文字列に入れることができますが、phpは文字列を意味するのか実際の変数"を意味するのかを推測できません。それは最初に推測した。$array[0][0]$array[0][0]

これを文字列で行いたい場合は、追加{して、変数が何であるかを示します。

echo "{$array[0][0]}"
于 2013-08-26T13:21:14.333 に答える