Включение вывода ошибок в скрипте: error_reporting(E_ALL)
Игнорировать ошибку в операторе: @ перед оператором
require — включает файл до выполнения скрипта
include — включает файл во время выполнения скрипта
КОНСТАНТЫ
define(«constname», значение, sens_flag) -объявление константы.
sens_flag — чувств к регистру в имени.
if (defined(«constname»)) — проверка существования константы.
К константе можно обращаться без $ОПЕРАТОРЫ
X % Y — остаток от деления
=== Если у оператора == один из операндов-булево значение, второй тоже приводится к булеву. Пустые строки и нули приводятся к false. === означает эквивалентность, т.е. без приведения типов. Вместо !=== исп. !(..===..)
$directory = `dir`; — выполнение внешней команды
УПРАВЛЯЮЩИЕ КОНСТРУКЦИИ
break(N) — прервать N-го по вложенности цикла
if (выражение) :
elseif (выражение) :
else:
endif;
(Условие) ? Значение если истина : значение если ложь
например: echo ($cnt>0) ? ‘Not null’ : ‘null’;
endfor, endwhile
ПЕРЕМЕННЫЕ
var_dump($name) — вывести значение в структурированном виде
$var = var_export($name, true) — вернуть значение в структурированном виде в переменную
$REMOTE_ADDR — адрес клиента
settype() — задать тип переменной
gettype() — проверить тип переменной{} — для указания имени переменной внутри строки в двойных кавычках
UnSet($val) — удаляет переменную, очищает память от нее
isset($val) — проверка нп существование переменной
&$valname — жесткая ссылка на переменную ($x=77; $link=&$x; echo $link;)$$valname — символическая ссылка нп переменную ($x=77; $link=»x»; echo $$link;) (77)СТРОКИ$str[n] — обращение к энному символу в строке’..’ — действуют только \’ и \\»..» — действуют переменные, \n \r \t \$ \» \\ и какой-то знак символа в 16ричном коде
$a= <<<LABEL……LABEL;-конструкция присвоения переменной многострочного значения
МАССИВЫ
$a=array(…); $b=array(…); $c=$a+$b; — слияние массивов. При совпадении индексов в результат попадет значение из первого массива. $c=array_merge() объединяет массивы без потерь. Совпадающие индексы будут добавлены в конец результ.массива.
Перебор элементов ассоциативного массива
For (reset($mas); ($k=key($mas)); next($mas) ) …;
При этом current($mas) соотв. текущему значению массива
End() , Prev() — обратное действие
array_search( $what, $arr_name[, $strict]) — возвращает ключ если найдено $what или FALSE
ОТЛАДКА
/etc/php5/apache/cond.d/xdebug.ini — zend_extension = xdebug.so — раскомментировать для XDEBUG. В этом файле параметры xdebug
/etc/php5/apache/cond.d/opcache.ini — zend_extension =opcache.so — ЗАкомментировать для XDEBUG
xdebug_start_trace(), xdebug_stop_trace() — старт и стоп записи трассировки XDEBUG.
debug_backtrace() — Выводит стек вызовов функций в массив (без xdebug)
var_dump($var) — выводит на экран структурированное значение переменной
var_export($var, true) — возвращает структурированное в текст представление переменной