Синтаксис / оператор массива PHP? - PullRequest
1 голос
/ 28 июня 2011

При написании синтаксиса для ассоциативного массива в PHP мы делаем следующее:

$a = array('foo' => 'bar');

Мне любопытно, как соотносится синтаксис => или, возможно, оператор.Относится ли это к какой-либо ссылке, используемой в хеш-таблице в ZE, или к некоторому виду последующего правого сдвига или ссылки, используемой в C?Я думаю, мне просто интересно узнать истинную основную цель этого синтаксиса, как он относится к расширениям ZE и / или php, используемым для обработки массивов, как это возможно относится к написанной функции в C до компиляции, или если я простоидея о чем я говорю :) 1007 *

Ответы [ 2 ]

6 голосов
/ 28 июня 2011

Символ => a.k.a. T_DOUBLE_ARROW - это просто токен синтаксического анализатора, такой как class, || или ::.

See: The list of php parser tokens

Ничего особенного, кроме того факта, что "it looks like an arrow" и используется для "array stuff".

Конечно, точное использование более сложное, чем это, но "array stuff" - краткое неточное описание, которое должно это сделать.

Используется для представления key => (points to) value

4 голосов
/ 28 июня 2011

Ответ на этот вопрос не проще, чем «Это похоже на стрелу». Это не совсем оператор присваивания, скажем, потому что это будет означать присваивание переменной (как для самого массива). Это специальный оператор присваивания массива.

Веб-разработчики такие крутые: P

...