Специфика синтаксиса
Переменные переменных
$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 | * / % | Умножение, деление, остаток от деления |