Skip to main content

Специфика синтаксиса

Переменные переменных

$foo = "bar"; 
$$foo = 'bаz";

После выполнение второго оператора у переменной $bar будет значение "baz".  Значение переменной foo рассматривается как имя переменной.

Переменные-ссылки

$black = &$white

Области видимости переменной:

  • Локальная область: переменные, объявленные в функции, локальны для функции. Но созданная внутри цикла - все равно функция.
  • Глобальная: перед переменной поставить global 
    function updateCounler() 
    { 
      global $counter; 
      $counler++; 
    } 
    $counter = 10; 
    updateCounter(); 
    echo $counter;

     В массиве  $GLOBALS хранятся глобальные переменные, доступные напрямую 

    function updateCounter()
    { 
    $GLOBALS[counter]++; 
    } 
  • Статическая переменная сохраняет значение между вызовами функции. Объявляется через static

isset() проверяет, существует ли переменная, unset() уничтожает переменную.

Операторы

Приор. Оператор Описание
21 clone, new создание нового объекта
20 [ индекс массива
19 ~ побитное отрицание

++ инкремент

-- декремент

(int), (bool), (float), (string), (array), (object), (unset)

Приведение типов

@ подавление ошибок
18 isinstanceof проверка типа
17 ! Логическое отрицание
16 *  /  % Умножение, деление, остаток от деления

15

+  -  .

Сложение, вычитание, конкатенация строки

14

<< >>

Побитный сдвиг влево, побитный сдвиг вправо

13

<  <= > >=

Меньше, меньше или равно, больше, больше или равно

12

==  !=  <>  ===  !==

Равно, не равно, тип и значение равны, тип и значение не равны

11

&

Побитное и

10

^

Побитное исключающее или

9

|

Побитное или

8

&&

Логическое и

7

||

Логическое или
6?:Условный оператор
5= += -=  и т д Присваивание
4andЛогическое и
3xorЛогическое исключающее или
2orЛогическое или
1,разделитель списка