§3. Выражения и операторы
3.1. Понятия выражения и оператора. Приоритет операторов.
Выражения являются самыми важными строительными элементами в PHP, поскольку почти все, что пишется в коде является выражением.
Выражение – это любая единица исходного кода, которая может быть вычислена интерпретатором для получения значения. Другими словами, к выражению следует относить любую фразу на языке PHP, которую можно вычислить и в результате получить значение.
Выражения делятся на простые (первичные) и сложные. Простые выражения не могут быть разделены на еще более простые выражения. К ним относятся, например, константы или переменные. Сложные выражения составляются из более простых при помощи различных операторов. Примером может служить выражение '$d=($a+$b)*4'.
Кстати, не стоит путать понятия инструкции и выражения, поскольку они несколько отличаются по своему смысловому содержанию, т.к. выражения – это все, что вычисляется для получения значений, а инструкция – это указание на выполнение программой какого-либо действия.
Оператор – это элемент программного кода, который используется для выполнения определенного действия в выражении.
Примерами выражений с использованием операторов могут служить '$a+$b', '$a=$b', '$a!=$b', '$a*=3', '++$b', '$a||$b' и др. Здесь символы и комбинации символов '+', '=', '!=', '*=', '++', '||' являются операторами, а выражения или значения, расположенные по сторонам операторов, называют операндами.
Большинство операторов обрабатывают свои операнды в определенном направлении. Это свойство принято называть ассоциативностью. Одни операторы выполняют обработку своих операндов слева направо, обладая левой ассоциативностью, другие обладают правой ассоциативностью, выполняя обработку в обратном направлении, т.е. справа налево. Также существуют операторы не имеющие ассоциативности.
Кроме того, операторы могут отличаться своим приоритетом, который определяет порядок (очередность) их выполнения в ходе вычисления значения выражения. Первыми выполняются операторы с более высоким приоритетом, затем операторы с более низким приоритетом и так далее по мере убывания их приоритетности. Если приоритет операторов одинаков, они группируются и обрабатываются согласно их ассоциативности. При этом операторы, имеющие одинаковый приоритет, но не имеющие ассоциативности, не могут использоваться друг за другом. Также отметим, что для принудительного указания порядка выполнения операторов используются круглые скобки (см. пример 3.1).
<?php $a=5+7*2; //Теперь $a==19, т.к. приоритет оператора '*' выше, чем у '+' echo $a.'<br>'; $b=(5+7)*2; //Теперь $b==24, т.к. порядок был указан при помощи скобок echo $b.'<br>'; $c=2; //$a<$b>$c; //Такое выражение недопустимо в PHP, т.к. операторы '<' и '>' //имеют равный приоритет, но не имеют ассоциативности $a<($b>$c); //А вот так можно, т.к. скобки явно указывают порядок выполнения $c=$a=$b; //Тоже самое, что и $c=($a=$b);, т.к. все операнды имеют равный //приоритет и правую ассоциативность $d=5-6-7; //Теперь $d==-8, т.к. операнды '-' и '-' имеют равный приоритет и echo $d.'<br>'; //левую ассоциативность, поэтому 5-6-7==(5-6)-7. Но лучше явно //указывать порядок выполнения при помощи скобок /* Старайтесь всегда использовать скобки, непосредственно определяя порядок группировки и не полагаясь на приоритет или ассоциативность операторов, поскольку такое поведение может меняться от одной версии PHP к другой!!! */ ?>
Пример 3.1. Использование операторов различной приоритетности и ассоциативности
Старайтесь всегда использовать скобки даже, если они необязательны, непосредственно определяя порядок группировки и не полагаясь на приоритет или ассоциативность операторов, поскольку такое поведение может изменяться от одной версии PHP к другой.
Все основные операторы языка PHP перечислены в таблице 3.2 в порядке убывания их приоритетов. Чем ниже приоритет, тем ниже находится строка с соответствующими операторами. Если операторы имеют одинаковый приоритет, они перечисляются в одной и той же строке таблицы.
Оператор | Описание | Ассоциативность |
---|---|---|
clone new |
Создает копию объекта Создает новый объект |
Отсутствует |
** | Возведение в степень | Справа налево |
. [] () |
Доступ к свойству (точечная нотация) Индекс массива Вызов функции |
Слева направо |
~ ++ -- (bool) (integer) (float) (string) (array) (object) @ |
Битовое НЕ Оператор инкремента Оператор декремента Оператор приведения к типу bool Оператор приведения к типу integer Оператор приведения к типу float Оператор приведения к типу string Оператор приведения к типу array Оператор приведения к типу object Подавление вывода сообщений об ошибках |
Справа налево |
instanceof | Оператор проверки типа | Отсутствует |
! | Логическое НЕ | Справа налево |
* / % |
Умножение Деление Деление по модулю (остаток от деления 2-х чисел) |
Слева направо |
+ - . |
Сложение Вычитание Конкатенация |
Слева направо |
<< >> |
Побитовый сдвиг влево Побитовый сдвиг вправо |
Слева направо |
< <= > >= |
Меньше Меньше или равно Больше Больше или равно |
Отсутствует |
== != === !== <> |
Равно Не равно Тождественно равно Тождественно не равно Не равно (аналог !=) |
Отсутствует |
& | Битовое И | Слева направо |
^ | Битовое ИЛИ-НЕ | Слева направо |
| | Битовое ИЛИ | Слева направо |
&& | Логическое И | Слева направо |
|| | Логическое ИЛИ | Слева направо |
? : | Условный (тернарный) оператор | Слева направо |
= += -= *= **= /= .= %= &= |= ^= <<= >>= => | Операторы присваивания | Справа налево |
AND | Логическое И | Слева направо |
XOR | Логическое ИЛИ-НЕ | Слева направо |
OR | Логическое ИЛИ | Слева направо |
, | Оператор 'запятая' | Слева направо |
Таблица 3.2. Операторы языка PHP
Большинство операторов, приведенных в таблице, являются бинарными, т.е. используются с двумя операндами. Например, плюс '+', минус '-', не равно '!=' и др. Есть также операторы, которые работают только с одним операндом, их называют унарными. К ним относятся, например, оператор инкремента '++' или оператор отрицания (унарный минус) '-', который применяется для смены знака числа на противоположный. Кроме того, в PHP используется один тернарный оператор, который имеет в своем арсенале целых три операнда. Им является условный оператор '? :'.
3.2. Арифметические операторы.
Арифметические операторы представляют собой основные арифметические операции, к которым относятся отрицание ('-$a'), вычитание ('$a-$b'), сложение ('$a+$b'), умножение ('$a*$b'), деление ('$a/$b'), деление по модулю ('$a%$b'), возведение в степень ('$a**$b').
Следует отметить, что:
- операнды арифметических операторов перед началом операции преобразуются в целые или вещественные числа, за исключением случая, когда оба операнда оператора '+' являются массивами; в этом случае оператор возвращает левый массив, к которому был присоединен правый массив, при чем для ключей, которые существуют в обоих массивах, используются значения из левого массива, а соответствующие им элементы из правого массива игнорируются; если преобразование операнда в число невозможно, интерпретатор сообщит об ошибке;
- после операции деления ('/') возвращается число с плавающей точкой, за исключением случая, когда оба операнда являются целыми числами, которые делятся нацело – в этом случае возвращается целочисленное значение;
- при делении по модулю ('%') операнды преобразуются в целые числа (удалением дробной части) еще до начала операции, а результат будет иметь тот же знак, что и делимое (см. пример 3.3).
<?php $a=6+2; //Теперь $a==8 $b='6 яблок'+2; //Теперь $b==8, т.к. '6 яблок' преобразуется к числу 6 echo $b.'<br>'; $c=6*2; //Теперь $c==12 $d=6/2; //Теперь $d==3, т.к. оба значения целые числа, которые делятся нацело $e=6.3/2; //Теперь $e==3.15 $m=6.3%2; //Теперь $m==0, т.к. 6.3 преобразуется в 6 и остаток от деления равен 0 $n=-5%(-2); //Теперь $n==-1, т.к. остаток от деления равен 1 и первый операнд echo $n.'<br>'; //(делимое) является отрицательным числом $a=[2,4]+[8,'t'=>5]; //Теперь $a==[2,4,'t'=>5], т.к. элемент с ключем '0' //имеется в обоих массивах, использовалось значение //ключа из первого массива ?>
Пример 3.3. Арифметические операторы языка PHP
3.3. Операторы инкремента и декремента.
В PHP, как и в JavaScript, поддерживаются префиксные и постфиксные операторы инкремента и декремента.
Оператор инкремента/декремента служит для увеличения/уменьшения значения своего операнда на единицу и обозначается знаками '++'/'--'. Если оператор инкремента/декремента расположен перед операндом, то он называется префиксным оператором инкремента/декремента. В этом случае оператор инкремента/декремента сперва увеличивает/уменьшает значение операнда на единицу, и только затем измененное на единицу значение операнда возвращается для дальнейшего использования. Если же оператор инкремента/декремента расположен после операнда, то он называется постфиксным оператором инкремента/декремента. В таком случае оператор инкремента/декремента сперва возвращает неизмененное (начальное) значение операнда, и только затем увеличивает/уменьшает значение операнда на единицу. Все операторы инкремента и декремента перечислены в таблице 3.4.
Пример | Название | Результат |
---|---|---|
++$a | Префиксный инкремент | Увеличивает $a на единицу, затем возвращает значение $a. |
$a++ | Постфиксный инкремент | Возвращает значение $a, затем увеличивает $a на единицу. |
--$a | Префиксный декремент | Уменьшает $a на единицу, затем возвращает значение $a. |
$a-- | Постфиксный декремент | Возвращает значение $a, затем уменьшает $a на единицу. |
Таблица 3.4. Операторы инкремента и декремента
Добавим, что операторы инкремента и декремента наиболее часто используются с переменными внутри циклов, особенно для увеличения/уменьшения показаний счетчиков цикла (подробнее об этом мы поговорим в соответствующем разделе, посвященному управляющим конструкциям). Пока же посмотрите несколько более простых примеров использования операторов инкремента и декремента (см. пример 3.5).
<?php $a=5; //Присвоили число 5 echo ++$a.'<br>'; //Выведет 6, т.к. префиксный оператор инкремента увеличит значение //переменной на 1, а затем вернет его для вывода; теперь $a==6 echo $a++.'<br>'; //Выведет 6, т.к. постфиксный оператор инкремента вернет для вывода //значение переменной, т.е. 6, а только потом увеличит его на 1 echo $a.'<br>'; //Выведет 7, т.к. после предыдущего использования $a==7 echo --$a.'<br>'; //Выведет 6, т.к. префиксный оператор декремента уменьшит значение //переменной на 1, а затем вернет его для вывода; теперь $a==6 echo $a--.'<br>'; //Выведет 6, т.к. постфиксный оператор декремента вернет сперва для //вывода значение переменной, т.е. 6, а только потом увеличит его на 1 echo $a.'<br>'; //Выведет 5, т.к. после предыдущего использования $a==5 ?>
Пример 3.5. Использование операторов инкремента и декремента
Также нужно иметь в виду, что:
- операторы инкремента и декремента влияют только на строки и числа;
- --NULL не даст никакого эффекта, однако ++NULL вернет число 1;
- инкрементирование или декрементирование булевых переменных, массивов, объектов и ресурсов не даст никакого результата.
3.4. Операторы присваивания.
Оператор присваивания обозначается при помощи знака равно '=' и означает, что левый операнд получает значение правого операнда. Например, выражение '$a=5' означает, что переменной $a было присвоено число 5, и его не следует рассматривать как сравнение на равенство значения переменной $a с числом 5, т.к. для этих целей используется оператор 'равно', который формируется двумя символами равно '=='. Если значение необходимо присвоить именованному ключу массива, то оператор присваивания имеет вид стрелки '=>'.
Поскольку оператор присваивания имеет правую ассоциативность, то при наличии в выражении нескольких операторов присваивания, они вычисляются справа налево. Эта особенность позволяет присваивать одно значение сразу нескольким переменным. Например, в выражении '$a=$b=$c=3' число 3 будет присвоено всем переменным по очереди, начиная справа, что равнозначно результату выражения '$a=($b=($c=3))'.
Напомним, что в PHP переменные присваиваются по значению (смотреть).
В дополнение к базовому оператору присваивания '=' в PHP применяется целый ряд комбинированных операторов присваивания, которые объединяют операцию присваивания с другой операцией (см. таблицу операторов). В общем виде выражение присваивания с комбинированным оператором '$a "operator"= $b' можно считать сокращенной записью выражения '$a = $a "operator" $b', например, '$a+=$b' является сокращенной записью выражения '$a=$a+$b', в котором к значению переменной $a прибавляется значение переменной $b, а результат присваивается переменной $a.
Использование комбинированных операторов присваивания показано в примере 3.6.
<?php $a=3; //Присвоили начальное значение echo $a.'<br>'; $a+=6; //Теперь $a==9, что равнозначно $a=$a+6; echo $a.'<br>'; $a*=2; //Теперь $a==18, что равнозначно $a=$a*2; echo $a.'<br>'; $a/=2; //Теперь $a==9, что равнозначно $a=$a/2; echo $a.'<br>'; $a**=2; //Теперь $a==81, что равнозначно $a=$a**2; echo $a.'<br>'; $a%=2; //Теперь $a==1, что равнозначно $a=$a%2; echo $a.'<br>'; ?>
Пример 3.6. Использование комбинированных операторов присваивания
3.5. Строковые операторы.
Как уже упоминалось ранее, для конкатенации (объединения) строк в PHP используется оператор '.', который объединяет свои операнды строкового типа и возвращает объединенную строку. Также имеется один комбинированный оператор присваивания с конкатенацией '.=', который сперва объединяет свои операнды строкового типа, а затем результат присваивает левому операнду (см. пример 3.7).
<?php $a="Всем привет от "; $b=$a."PHP!"; //Теперь $b=="Всем привет от PHP!" echo $b.'<br>'; $a="Всем привет от "; $a.="PHP!"; //Теперь $a=="Всем привет от PHP!" echo $a.'<br>'; /* Напомним, что $a.=$b - это сокращенная запись $a=$a.$b */ ?>
Пример 3.7. Использование строковых операторов
3.6. Операторы сравнения.
Для сравнения двух значений используются операторы сравнения, перечисленные в таблице 3.8. В зависимости от значений своих операндов они возвращают логические значения true или false, которые в основном применяются в таких управляющих конструкциях, как if, while или for для управления дальнейшим ходом исполнения программы.
Пример | Название | Результат |
---|---|---|
$a==$b | Равно | TRUE, если после преобразования типов $a равно $b |
$a===$b | Тождественно равно | TRUE, если операнды относятся к одному типу и $a равно $b |
$a!=$b | Не равно | TRUE, если после преобразования типов $a не равно $b |
$a<>$b | Не равно | TRUE, если после преобразования типов $a не равно $b |
$a!==$b | Тождественно не равно | TRUE, если $a не равно $b или они относятся к разным типам |
$a<$b | Меньше | TRUE, если $a строго меньше $b |
$a>$b | Больше | TRUE, если $a строго больше $b |
$a<=$b | Меньше или равно | TRUE, если $a меньше или равно $b |
$a>=$b | Больше или равно | TRUE, если $a больше или равно $b |
Таблица 3.8. Операторы сравнения
Отметим, что при сравнении интерпретатором довольно часто используется операция приведения типов, при этом сравнение происходит в соответствии с таблицей 3.9. Преобразование типов не происходит только при использовании операторов строгого сравнения '===' или '!==', т.к. в этом случае кроме самих значений сравниваются еще и типы.
Тип операнда 1 | Тип операнда 2 | Результат |
---|---|---|
bool или null | что угодно | Оба операнда преобразуются в тип bool, при этом FALSE < TRUE и null<'0' |
string, resource или number | string, resource или number | Строки и ресурсы преобразуются в числа, но при этом считается, что результатом сравнения выражения ""<"0" будет true . |
object | object | Объекты разных классов не сравниваются, а при сравнении объектов одного класса, сравниваются их свойства (подробнее в разделе посвященном классам и объектам). Также отметим, что встроенные классы могут определять свои собственные правила сравнения. |
array | array | Массивы с меньшим числом элементов всегда считаются меньше. Если количество элементов сравниваемых массивов равно, то идет сравнение значений одинаковых ключей. Если ключ из первого операнда не найден во втором операнде, то массивы не могут сравниваться. |
object | что угодно | Если второй операнд логический или null, то object и null преобразуются в тип bool. В других случаях object всегда больше. |
array | что угодно | Если второй операнд логический или null, то массив и null преобразуются в тип bool. В других случаях, если второй операнд не является object, array всегда больше. |
Таблица 3.9. Правила сравнения значений различных типов
При сравнении двух строк, которые в начале строки не содержат верного формата целого или вещественного числа, они сравниваются посимвольно, начиная с первого символа. Как только интерпретатор обнаружит отличие символов или достигнет конца строки, он выдаст результат. При этом больше считается тот символ (соответственно и вся строка), который в таблице кодов идет позже, т.е. имеет большее числовое значение своего кода. А поскольку буквы нижнего регистра в таблице ASCII идут после букв верхнего регистра, то буквы нижнего регистра считаются больше букв верхнего регистра.
Что касается массивов, то порядок проверки их на равенство показан в таблице 3.10.
Пример | Название | Результат |
---|---|---|
$a==$b | Равно | TRUE, если массивы $a и $b содержат одни и те же пары 'ключ=>значение'. |
$a!=$b | Не равно | TRUE, если массив $a не равен массиву $b. |
$a<>$b | Не равно | TRUE, если массив $a не равен массиву $b. |
a===$b | Тождественно равно | TRUE, если массивы $a и $b содержат одни и те же пары 'ключ=>значение' в том же самом порядке и того же типа. |
$a!==$b | Тождественно не равно | TRUE, если массив $a не равен тождественно массиву $b. |
Таблица 3.10. Порядок проверки массивов на равенство
Напомним, что не стоит сравнивать вещественные числа при помощи стандартных операторов из-за их ограниченной точности (смотреть). В общем случае для достижения наилучшего результата при сравнении значений одного типа, например, массивов, строк или тех же вещественных чисел, следует использовать специально предназначенные для этого функции, которых в PHP имеется достаточное количество.
Для наглядности в примере 3.11 представлен ряд операций сравнения значений различных типов.
<?php $a='5'; //Присвоили строку '5' $b='4'; //Присвоили строку '4' $a>$b; //true, т.к. строки преобразуются в целые числа $a=null; $a>$b; //false, т.к. null преобразуется в false, а строка '4' в true $a=='0'; //false, т.к. null<'0' $a==''; //true, т.к. оба операнда преобразуются в false $a<true; //true, т.к. null преобразуется в false, а false<true 'b'>'Abd'; //true, т.к. символ нижнего регистра больше любого символа //верхнего регистра, т.е. 'b'>'A', а значит 'b'>'Abd' ';'>':'; //true, т.к. символ ';' расположен в таблице ASCII после символа ':' $a==[]; //true, т.к. один из операндов null, то оба преобразовались в тип bool, //и пустой массив в ходе преобразования стал значением false []>5; //true, т.к. массив больше любого значения, если оно не является объектом //или не нужно сравнивать со значением типа null или bool [2,3,'n'=>8]<[1,2,3,4]; //true, т.к. во втором массиве больше элементов /* Для сравнения различных значений существует ряд соответствующих функций, которыми и нужно пользоваться */ /* Напомним, что результатом сравнения является одно из логических значений true или false. Соответственно, при выводе оператор echo преобразует их либо в строку '1', либо в пустую строку '' */ ?>
Пример 3.11. Сравнение значений различных типов
3.7. Логические операторы.
PHP поддерживает следующие стандартные логические операторы: 'AND' и '&&' (логическое И), 'OR' и '||' (логическое ИЛИ), '!' (логическое НЕ) и 'XOR' (исключающее ИЛИ). Все они используются в логических выражениях для определения того или иного хода выполнения программы в зависимости от возвращаемого выражением результата и относятся к бинарным операторам, за исключением оператора '!', который является унарным. При использовании логических операторов их операнды преобразуются к булевому типу данных (смотреть), а результат зависит от приведенных логических значений операндов и вида логического оператора (см. таблицу 3.12).
Пример | Название | Результат |
---|---|---|
$a and $b | Логическое И | TRUE, если оба значения и $a, и $b равны TRUE. |
$a or $b | Логическое ИЛИ | TRUE, если оба значения равны TRUE или хотя бы одно из значений $a или $b равно TRUE. |
$a xor $b | Исключающее ИЛИ | TRUE, если одно из значений $a или $b равно TRUE, но не оба сразу. |
! $a | Логическое НЕ | TRUE, если значение $a не равно TRUE. |
$a && $b | Логическое И | TRUE, если оба значения и $a, и $b равны TRUE. |
$a || $b | Логическое ИЛИ | TRUE, если оба значения равны TRUE или хотя бы одно из значений $a или $b равно TRUE. |
Таблица 3.12. Логические операторы
Разница между операторами 'AND' и '&&', а также 'OR' и '||' заключается в том, что операторы 'AND', 'OR' и 'XOR' имеют более низкий приоритет, который даже ниже, чем у операторов присваивания (см. таблицу операторов PHP).
Важно понимать, как интерпретатор обрабатывает логические выражения. Если в выражении с оператором '||' первый (левый) операнд будет иметь значение true или в выражении с оператором '&&' первый операнд будет иметь значение false, то второй (правый) операнд уже вычисляться не будет. Это связано с тем, что конечный результат в таких случаях уже не изменится (см. таблицу 3.12), а следовательно отпадает и необходимость тратить время на обработку кода второго операнда. Однако при этом нужно быть внимательным и не помещать в правый операнд код, от которого может зависеть правильная работа программы.
Использование логических операторов показано в примере 3.13.
<?php $a=5||true; //Теперь $a==true, т.к. операнды преобразуются к логическому типу, //поэтому 5 преобразовалось в true $a=0||false; //Теперь $a==false, т.к. 0->false $a=5&&8; //Теперь $a==true, т.к. 5->true и 8->true $a='0'&&8; //Теперь $a==false, т.к. '0'->false $a=!false; //Теперь $a==true $a=!5; //Теперь $a==false, т.к. 5->true /* Функция foo() не будет вызываться из-за шунтов */ $a=(false&&foo()); $b=(true||foo()); $c=(false and foo()); $d=(true or foo()); /* Отличие '||' от 'or' и '&&' от 'and' */ $a=false||true; //Действует как ($a=(false||true)) $a=false or true; //Действует как (($a=false) or true) $a=false&&true; //Действует как ($a=(false&&true)) $a=false and true; //Действует как (($a=false) and true) $a=5 xor 0; //Теперь $a==5, действует как (($a=5) xor 0) $a=5 and 0; //Теперь $a==5, действует как (($a=5) and 0) $a=5 or 0; //Теперь $a==5, действует как (($a=5) or 0) $a=5||0; //Теперь $a==true, действует как ($a=(5||0)) $a=5&&0; //Теперь $a==false, действует как ($a=(5&&0)) $a=(5 xor 6); //Теперь $a==false, действует как ($a=(5 xor 6)) ?>
Пример 3.13. Использование логических операторов
3.8. Оператор подавления ошибок.
Для управления выводом ошибок в PHP имеется специальный оператор '@', называемый оператором подавления ошибок. Он используется перед выражениями в тех случаях, когда необходимо предотвратить вывод сообщений об ошибках, генерируемых данным выражением (см. пример 3.14). При этом оператор не применяется перед определением функции или класса, условными конструкциями и т.д. Его разрешается использовать только перед выражениями. Кроме того, нужно иметь в виду, что при использовании оператора подавления ошибок в случае возникновения критической ошибки дальнейшая работа скрипта будет остановлена без каких-либо уведомлений.
<?php $a; echo $a; //Выведет предупреждение 'Notice: Undefined variable: a in...' echo @ $a; //Предупреждение не выводится @ echo $a; //Выведет "Parse error: syntax error, unexpected 'echo' ...", т.к. //перед языковыми конструкциями использовать оператор нельзя ?>
Пример 3.14. Использование оператора подавления ошибок
Остальные операторы, перечисленные в таблице операторов, будут рассмотрены в соответствующих разделах. Что касается побитовых операторов, то они рассматриваются в отдельной статье.
Контрольные вопросы и задания
- Что такое выражение? Какие выражения называются простыми? Какие сложными?
- Дайте определение оператору и его операндам. Опишите понятие ассоциативности операторов.
- На какие виды делятся операторы в зависимости от количества своих операндов?
- Перечислите арифметические операторы. Опишите их особенности.
- Опишите операторы инкремента и декремента, а также особенности их применения.
- Перечислите все операторы присваивания.
- Какой оператор служит для конкатенации строк?
- Перечислите операторы сравнения. Опишите порядок сравнения разных типов данных.
- Опишите логические операторы, а также особенности их применения.
- Для чего нужен оператор подавления ошибок?
Словарь новых английских слов
operator [ˈɒpəreɪtə] – оператор. clone [kləʊn] – двойник, клон. instance [ˈɪnst(ə)ns] – образец, пример. or [ɔː] – или. while [wʌɪl] – до тех пор (пока). notice [ˈnəʊtɪs] – предупреждение, уведомление. |
undefined [ʌndɪˈfʌɪnd] – неопределенный. variable [ˈvɛːrɪəb(ə)l] – переменная. error [ˈɛrə] – ошибка. parse [pɑːz] – разбор, анализ. unexpected [ʌnɪkˈspɛktɪd] – непредвиденный, внезапный. syntax [ˈsɪntaks] – синтаксис, синтаксический. |