Справочник языка PHP
Основы синтаксиса
Типы
- Введение
- Булев
- Целые числа
- Числа с плавающей точкой
- Строки
- Числовые строки
- Массивы
- Итерируемые
- Объекты
- Перечисления
- Ресурс
- NULL
- Функции обратного вызова (callback-функции)
- Объявление типов
- Манипуляции с типами
Переменные
- Основы
- Предопределённые переменные
- Область видимости переменной
- Переменные переменных
- Переменные извне PHP
Константы
Выражения
Операторы
- Приоритет оператора
- Арифметические операторы
- Оператор присваивания
- Побитовые операторы
- Операторы сравнения
- Оператор управления ошибками
- Операторы исполнения
- Операторы инкремента и декремента
- Логические операторы
- Строковые операторы
- Операторы, работающие с массивами
- Оператор проверки типа
Управляющие конструкции
- Введение
- if
- else
- elseif/else if
- Альтернативный синтаксис управляющих структур
- while
- do-while
- for
- foreach
- break
- continue
- switch
- match
- declare
- return
- require
- include
- require_once
- include_once
- goto
Функции
- Функции, определяемые пользователем
- Аргументы функции
- Возврат значений
- Обращение к функциям через переменные
- Встроенные функции
- Анонимные функции
- Стрелочные функции
Классы и объекты
- Введение
- Основы
- Свойства
- Константы классов
- Автоматическая загрузка классов
- Конструкторы и деструкторы
- Область видимости
- Наследование
- Оператор разрешения области видимости (::)
- Ключевое слово static
- Абстрактные классы
- Интерфейсы объектов
- Трейты
- Анонимные классы
- Перегрузка
- Итераторы объектов
- Магические методы
- Ключевое слово final
- Клонирование объектов
- Сравнение объектов
- Позднее статическое связывание
- Объекты и ссылки
- Сериализация объектов
- Ковариантность и контравариантность
- Журнал изменений ООП
Пространства имён
- Обзор пространств имён
- Определение пространств имён
- Определение подпространств имён
- Описание нескольких пространств имён в одном файле
- Использование пространства имён: основы
- Пространства имён и динамические особенности языка
- Ключевое слово namespace и константа __NAMESPACE__
- Использование пространств имён: импорт/создание псевдонима имени
- Глобальное пространство
- Использование пространств имён: переход к глобальной функции/константе
- Правила разрешения имён
- Часто задаваемые вопросы (FAQ): вещи, которые вам необходимо знать о пространствах имён
Перечисления
- Обзор перечислений
- Основы перечислений
- Типизированные перечисления
- Методы перечислений
- Статические методы перечислений
- Константы перечислений
- Трейты
- Значения перечисления в постоянных выражениях
- Отличия от объектов
- Список значений
- Сериализация
- Примеры
Ошибки
- Основы
- Ошибки в PHP 7
- Исключения
- Наследование исключений
- Fibers
- Генераторы
- Знакомство с генераторами
- Синтаксис генераторов
- Сравнение генераторов с объектами класса Iterator
- Атрибуты
- Введение в атрибуты
- Синтаксис атрибутов
- Чтение атрибутов с помощью Reflection API
- Объявление классов атрибутов
- Объяснение ссылок
- Что такое ссылки
- Что делают ссылки
- Чем ссылки не являются
- Передача по ссылке
- Возврат по ссылке
- Сброс переменных-ссылок
- Неявное использование механизма ссылок
- Предопределённые переменные
- Суперглобальные переменные — Встроенные переменные, которые всегда доступны во всех областях
- $GLOBALS — Ссылки на все переменные глобальной области видимости
- $_SERVER — Информация о сервере и среде исполнения
- $_GET — Переменные HTTP GET
- $_POST — Переменные HTTP POST
- $_FILES — Переменные файлов, загруженных по HTTP
- $_REQUEST — Переменные HTTP-запроса
- $_SESSION — Переменные сессии
- $_ENV — Переменные окружения
- $_COOKIE — HTTP Cookies
- $php_errormsg — Предыдущее сообщение об ошибке
- $http_response_header — Заголовки ответов HTTP
- $argc — Количество аргументов, переданных скрипту
- $argv — Массив переданных скрипту аргументов
- Предопределённые исключения
- Exception
- ErrorException
- Error
- ArgumentCountError
- ArithmeticError
- AssertionError
- DivisionByZeroError
- CompileError
- ParseError
- TypeError
- ValueError
- UnhandledMatchError
- FiberError
- Встроенные интерфейсы и классы
- Traversable — Интерфейс Traversable
- Iterator — Интерфейс Iterator
- IteratorAggregate — Интерфейс IteratorAggregate
- Throwable
- ArrayAccess — Интерфейс ArrayAccess
- Serializable — Интерфейс Serializable
- Closure — Класс Closure
- Generator — Класс Generator
- Fiber — Класс Fiber
- WeakReference — Класс WeakReference
- WeakMap — Класс WeakMap
- Stringable — Интерфейс Stringable
- UnitEnum — Интерфейс UnitEnum
- BackedEnum — Интерфейс BackedEnum
- Контекстные опции и параметры
- Контекстные опции сокета — Список контекстных опций сокета
- Опции контекста HTTP — Список опций контекста HTTP
- Параметры контекста FTP — Список параметров контекста FTP
- Опции контекста SSL — Список опций контекста SSL
- Опции контекста CURL — Список опций контекста CURL
- Контекстные опции Phar — Список контекстных опций Phar
- Параметры контекста — Список параметров контекста
- Опции контекста Zip — Список опций контекста Zip
- Поддерживаемые протоколы и обёртки
- file:// — Доступ к локальной файловой системе
- http:// — Доступ к URL-адресам по протоколу HTTP(s)
- ftp:// — Доступ к URL-адресам по протоколу FTP(s)
- php:// — Доступ к различным потокам ввода-вывода
- zlib:// — Сжатые потоки
- data:// — Схема Data (RFC 2397)
- glob:// — Нахождение путей, соответствующих шаблону
- phar:// — PHP-архив
- ssh2:// — Secure Shell 2
- rar:// — RAR
- ogg:// — Аудиопотоки
- expect:// — Потоки для взаимодействия с процессами