PHP: Справочник языка — Manual
PHP 8.2.4 Released!
- Основы синтаксиса
- Теги PHP
- Изолирование от HTML
- Разделение инструкций
- Комментарии
- Типы
- Введение
- Type System
- NULL
- Логический тип
- Целые числа
- Числа с плавающей точкой
- Строки
- Числовые строки
- Массивы
- Объекты
- Перечисления
- Ресурс
- Функции обратного вызова (callback-функции)
- Mixed
- Void
- Never
- Relative class types
- Literal types
- Итерируемые
- Объявление типов
- Манипуляции с типами
- Переменные
- Основы
- Предопределённые переменные
- Область видимости переменной
- Переменные переменных
- Переменные извне PHP
- Константы
- Синтаксис
- Предопределённые константы
- Магические константы
- Выражения
- Операторы
- Приоритет оператора
- Арифметические операторы
- Оператор присваивания
- Побитовые операторы
- Операторы сравнения
- Оператор управления ошибками
- Операторы исполнения
- Операторы инкремента и декремента
- Логические операторы
- Строковые операторы
- Операторы, работающие с массивами
- Оператор проверки типа
- Управляющие конструкции
- Введение
- if
- else
- elseif/else if
- Альтернативный синтаксис управляющих структур
- while
- do-while
- for
- foreach
- break
- continue
- switch
- match
- declare
- return
- require
- include
- require_once
- include_once
- goto
- Функции
- Функции, определяемые пользователем
- Аргументы функции
- Возврат значений
- Обращение к функциям через переменные
- Встроенные функции
- Анонимные функции
- Стрелочные функции
- Callback-функции как объекты первого класса
- Классы и объекты
- Введение
- Основы
- Свойства
- Константы классов
- Автоматическая загрузка классов
- Конструкторы и деструкторы
- Область видимости
- Наследование
- Оператор разрешения области видимости (::)
- Ключевое слово 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
- InternalIterator — Класс InternalIterator
- Throwable
- ArrayAccess — Интерфейс ArrayAccess
- Serializable — Интерфейс Serializable
- Closure — Класс Closure
- stdClass — Класс stdClass
- Generator — Класс Generator
- Fiber — Класс Fiber
- WeakReference — Класс WeakReference
- WeakMap — Класс WeakMap
- Stringable — Интерфейс Stringable
- UnitEnum — Интерфейс UnitEnum
- BackedEnum — Интерфейс BackedEnum
- SensitiveParameterValue — The SensitiveParameterValue class
- Предопределённые атрибуты
- Attribute — Класс Attribute
- AllowDynamicProperties — Класс AllowDynamicProperties
- ReturnTypeWillChange — Класс ReturnTypeWillChange
- SensitiveParameter — Класс SensitiveParameter
- Контекстные опции и параметры
- Контекстные опции сокета — Список контекстных опций сокета
- Опции контекста HTTP — Список опций контекста HTTP
- Параметры контекста FTP — Список параметров контекста FTP
- Опции контекста SSL — Список опций контекста SSL
- Опции контекста CURL — Список опций контекста CURL
- Контекстные опции Phar — Список контекстных опций Phar
- Параметры контекста — Список параметров контекста
- Опции контекста Zip — Список опций контекста Zip
- Zlib context options — Zlib context option listing
- Поддерживаемые протоколы и обёртки
- file:// — Доступ к локальной файловой системе
- http:// — Доступ к URL-адресам по протоколу HTTP(s)
- ftp:// — Доступ к URL-адресам по протоколу FTP(s)
- php:// — Доступ к различным потокам ввода-вывода
- zlib:// — Сжатые потоки
- data:// — Схема Data (RFC 2397)
- glob:// — Нахождение путей, соответствующих шаблону
- phar:// — PHP-архив
- ssh3:// — Secure Shell 2
- rar:// — RAR
- ogg:// — Аудиопотоки
- expect:// — Потоки для взаимодействия с процессами
+add a note
User Contributed Notes
There are no user contributed notes for this page.
Справочник языка | Руководство по PHP
За последние 24 часа нас посетили 11338 программистов и 947 роботов. Сейчас ищут 498 программистов …
Вернуться к: Руководство по PHP
- Основы синтаксиса
- Теги PHP
- Изолирование от HTML
- Разделение инструкций
- Комментарии
- Типы
- Введение
- Булев
- Целые числа
- Числа с плавающей точкой
- Строки
- Массивы
- Объекты
- Ресурс
- NULL
- Callbacks / Callables
- Псевдо-типы и переменные, используемые в этой документации
- Манипуляции с типами
- Переменные
- Основы
- Предопределенные переменные
- Область видимости переменной
- Переменные переменных
- Переменные извне PHP
- Константы
- Синтаксис
- «Волшебные» константы
- Выражения
- Операторы
- Приоритет оператора
- Арифметические операторы
- Оператор присваивания
- Побитовые операторы
- Операторы сравнения
- Оператор управления ошибками
- Операторы исполнения
- Операторы инкремента и декремента
- Логические операторы
- Строковые операторы
- Операторы, работающие с массивами
- Оператор проверки типа
- Управляющие конструкции
- Введение
- if
- else
- elseif/else if
- Альтернативный синтаксис управляющих структур
- while
- do-while
- for
- foreach
- break
- continue
- switch
- declare
- return
- require
- include
- require_once
- include_once
- goto
- Функции
- Функции, определяемые пользователем
- Аргументы функции
- Возврат значений
- Обращение к функциям через переменные
- Встроенные функции
- Анонимные функции
- Классы и объекты
- Введение
- Основы
- Свойства
- Константы классов
- Автоматическая загрузка классов
- Конструкторы и деструкторы
- Область видимости
- Наследование
- Оператор разрешения области видимости (::)
- Ключевое слово «static»
- Абстрактные классы
- Интерфейсы объектов
- Трейты
- Anonymous classes
- Перегрузка
- Итераторы объектов
- Магические методы
- Ключевое слово «final»
- Клонирование объектов
- Сравнение объектов
- Контроль типа
- Позднее статическое связывание
- Объекты и ссылки
- Сериализация объектов
- Журнал изменений ООП
- Пространства имен
- Обзор пространств имен
- Определение пространств имен
- Определение подпространств имен
- Описание нескольких пространств имен в одном файле
- Использование пространства имен: основы
- Пространства имен и динамические особенности языка
- Ключевое слово namespace и константа __NAMESPACE__
- Использование пространств имен: импорт/создание псевдонима имени
- Глобальное пространство
- Использование пространств имен: переход к глобальной функции/константе
- Правила разрешения имен
- Часто задаваемые вопросы (FAQ): вещи, которые вам необходимо знать о пространствах имен
- Errors
- Basics
- Errors in PHP 7
- Исключения
- Наследование исключений
- Generators
- Generators overview
- Generator syntax
- Comparing generators with Iterator objects
- Ссылки. Разъяснения
- Что такое ссылки
- Что делают ссылки
- Чем ссылки не являются
- Передача по ссылке
- Возвращение по ссылке
- Сброс переменных-ссылок
- Неявное использование механизма ссылок
- Предопределённые переменные
- Суперглобальные переменные — Суперглобальные переменные — это встроенные переменные, которые всегда доступны во всех областях видимости
- $GLOBALS — Ссылки на все переменные глобальной области видимости
- $_SERVER — Информация о сервере и среде исполнения
- $_GET — GET-переменные HTTP
- $_POST — HTTP POST variables
- $_FILES — Переменные файлов, загруженных по HTTP
- $_REQUEST — Переменные HTTP-запроса
- $_SESSION — Переменные сессии
- $_ENV — Переменные окружения
- $_COOKIE — HTTP Куки
- $php_errormsg — Предыдущее сообщение об ошибке
- $HTTP_RAW_POST_DATA — Необработанные POST-данные
- $http_response_header — Заголовки ответов HTTP
- $argc — Количество аргументов переданных скрипту
- $argv — Массив переданных скрипту аргументов
- Предопределённые исключения
- Exception
- ErrorException
- Встроенные интерфейсы и классы
- Traversable — Интерфейс Traversable
- Iterator — Интерфейс Iterator
- IteratorAggregate — Интерфейс IteratorAggregate
- ArrayAccess — Интерфейс ArrayAccess
- Serializable — Интерфейс Serializable
- Closure — Класс Closure
- Generator — The Generator class
- Контекстные опции и параметры
- Контекстные опции сокета — Список контекстных опций сокета
- Опции контекста HTTP — Список опций контекста HTTP
- Параметры контекста FTP — Список параметров контекста FTP
- Опции контекста SSL — Список опций контекста SSL
- Опции контекста CURL — Список опций контекста CURL
- Контекстные опции Phar — Список контекстных опций Phar
- MongoDB context options — MongoDB context option listing
- Параметры контекста — Список параметров контекста
- Поддерживаемые протоколы и обработчики (wrappers)
- file:// — Доступ к локальной файловой системе
- http:// — Доступ к URL-адресам по протоколу HTTP(s)
- ftp:// — Доступ к URL-адресам по протоколу FTP(s)
- php:// — Доступ к различным потокам ввода-вывода
- zlib:// — Сжатые потоки
- data:// — Схема Data (RFC 2397)
- glob:// — Нахождение путей, соответствующих шаблону
- phar:// — PHP архив
- ssh3:// — Secure Shell 2
- rar:// — RAR
- ogg:// — Аудио потоки
- expect:// — Потоки для взаимодействия с процессами
Вернуться к: Руководство по PHP
Пакет переводов / Многоязычность / Документация
- Дом
- Документация
- Многоязычный
- Пакет переводов
Чтобы упростить вам задачу, мы составили пакет переводов *, содержащий следующие языки:
Язык | Регион | |
---|---|---|
Английский | en_US | |
французский | fr_FR | |
немецкий | de_DE | |
итальянский | it_IT | |
Испанский | es_ES | |
Португальский | pt_PT | |
голландский | нл_НЛ | |
датский | da_DK | |
Турецкий | tr_TR | |
русский | ru_RU |
Скачать Переводы
Важно : Несмотря на то, что мы стараемся обеспечить общее хорошее качество, имейте в виду, что мы не профессионалы и не можем гарантировать оптимальный перевод.
* Пакет переводов доступен бесплатно только для лицензированных пользователей.
← Создать перевод
Налогообложение →
Наш веб-сайт использует файлы cookie. Продолжая, вы соглашаетесь на использование файлов cookie на вашем устройстве, если вы не отключили их в своем браузере.
Автоматическое создание документации PHP? — Переполнение стека
спросил
Изменено 3 года, 11 месяцев назад
Просмотрено 57 тысяч раз
Для ActionScript 2 я использовал NaturalDocs. Однако у него довольно плохая поддержка PHP. До сих пор я смотрел на doxygen и phpDocumentor, но, на мой взгляд, их вывод довольно уродлив. У кого-нибудь есть опыт автоматической генерации документации для PHP? Я бы предпочел использовать теги в стиле javadoc, они короткие для написания и легко запоминаются.
- php
- документация
- создание документации
0
ApiGen
http://apigen.org/
ApiGen поддерживает пространства имен, пакеты PHP 5.3, ссылки между документацией, перекрестные ссылки на стандартные классы PHP и общую документацию, создание выделенного исходного кода и экспериментальную поддержку PHP 5.4. черты.
DocBlox
http://www.docblox-project.org/
Совместимый с PHP 5.3 генератор документации API, предназначенный для проектов любого размера и непрерывной интеграции.
способен полностью анализировать и преобразовывать Zend Framework 2
3
Существует два хорошо известных и часто используемых инструмента, которые могут генерировать документы API из docblocks:
- phpDocumentor, который специфичен для PHP и, вероятно, является одним из наиболее часто используемых инструментов для проектов PHP
- и Doxygen, который больше подходит для C, но некоторыми людьми используется для PHP.
О «рекомендациях»: я бы сказал, что это зависит от ваших проектов, но, по крайней мере, я ожидаю увидеть:
- описание того, что делает метод/функция
- параметров, с
@param имя типа описание параметра
- возвращаемое значение, с
@return type описание возвращаемого значения
- исключения, с
описанием типа @throws исключения, которое может быть выдано
Замечательно то, что последняя версия IDE (например, Eclipse PDT) может считывать и интерпретировать эти маркеры, чтобы давать подсказки при кодировании 😉
Кроме того, появляется все больше и больше инструментов PHP, которые используйте php docblocks для других целей, кроме документации.
Например, PHPUnit позволяет вам указывать некоторые вещи, связанные с тестами, используя определенные теги — см. Аннотации.
1
PHPDoc, вероятно, так же хорош, как и вы, с точки зрения встроенного комментирования в стиле Javadoc. Вы также можете посмотреть PHPXRef.
3
Да, phpDocumentor (http://www.phpdoc.org/) является приемлемым стандартным инструментом для автодокументации PHP. Это стандарт де-факто.
Допустимо следовать общим рекомендациям JavaDoc для кода при документировании кода PHP. Однако вы столкнетесь со случаями, когда этого недостаточно, потому что PHP и Java — это разные языки.
Например, функции PHP не имеют возвращаемого типа, и неизбежно (а иногда и желательно), чтобы функция возвращала один тип в одном контексте и другой тип во втором контексте. Рекомендации JavaDoc не помогут в этом, потому что это невозможно сделать на Java.
2
phpDocumentor может выводить в стиле, похожем на документацию php.net (и он встроен как в умные, так и в обычные макеты)
1
Проверьте PHPDoctor http://peej.