PHP — это открытый, мультипарадигмальный, динамически типизированный и интерпретируемый язык сценариев, изначально разработанный для веб-разработки на стороне сервера. Используйте этот тег для вопросов о программировании на языке PHP.

PHP– это широко используемый язык сценариев общего назначения с открытым исходным кодом, мультипарадигменный, динамически типизируемый и интерпретируемый, изначально разработанный для веб-разработки на стороне сервера. .

Оригинальный PHP-проект, изобретенный Расмусом Лердорфом, обозначал «Личная домашняя страница». Сегодня это означает рекурсивную аббревиатуру PHP: Hypertext Preprocessor.

Последний стабильный выпуск, изменения в разработке и ветки разработки можно найти на веб-сайте PHP, а исходный код, написанный на C, доступен по адресу репозиторий GitHub в PHP.

Чтобы создать среду для обучения и экспериментов с PHP, несколько пакетов приложений включают, среди прочих компонентов, веб-сервер и PHP:

  • AMPPS
  • XAMPP (для Windows, Mac OS X и Linux)
  • DEB.SURY.ORG(PHP для Debian в целом и пакет дистрибутивов Linux на основе Ubuntu и PPA)
  • MAMP(для Mac OS)
  • WampServer(для Windows)
  • easyPHP(для Windows)
  • WPN-XM(для Windows)
  • Laragon(для Windows)

Есть такие варианты, как Cygwin (Linux на Windows), в которых вы можете установить PHP так же, как и любой другой Linux.

PHP предоставляет встроенный веб-сервер для целей тестирования и развития. Можно запустить следующую команду:

 php -S localhost:8000

После выполнения вышеуказанной команды сервер будет прослушивать порт 8000, используя текущий рабочий каталог в качестве корневого каталога документа. См. руководство по PHPдля получения дополнительной информации.

Примечание. Чтобы создать онлайн-демонстрацию для вашего вопроса, вы можете использоватькодовую панель,3v4l.или песочница PHP. Однако ваш вопрос или ответ должны по-прежнему включать все соответствующие коды.

Версии PHP

Рекомендуется использовать текущую стабильную выпущенную версию. Все версии ниже 8.0 официально не поддерживаются и объявлены прекращенными. Список поддерживаемых ветвей и статус их обслуживания можно найтиздесь.

Для получения дополнительной информации о новых функциях и необходимых изменениях в новой версии см. Официальные документы по миграции:

Пример PHP-скрипта

Этот сценарий отображает Hello World! на вашем экране.

<?php

echo 'Hello World!';

Чтобы запустить этот скрипт в консоли, сохраните его в текущем рабочем каталоге в файл с именем hello.php и выполните команду: php hello.php.

Сообщество

PHP имеет много активных форумов сообщества, в том числе:

Дополнительная информация

Интернет документация

руководство по PHPявляется официальной документацией для синтаксиса языка с функцией поиска и ярлыками URL (например, https://php.net/explode). API хорошо документировандля связанных и дополнительных расширений. Большинство дополнительных расширений можно найти в PECL. В PEARхранилище содержится множество классов, предоставляемых сообществом. Также можно загрузить автономную версию документации здесь.

PHP Framework Interop Group (PHP-FIG) также создала стандарты, касающиеся стилей и стандартов кодирования PHP. Эти стандартные рекомендации PHP (PSR) можно найтиздесь.

Учебники по PHP

Информация, связанная с безопасностью PHP

Бесплатные книги по программированию на PHP

Поддержка базы данных

PHP поддерживает широкий спектр баз данных, как реляционных, так и нереляционных.

PHP часто используется в паре с реляционной базой данных MySQL. PHP также включает отличную поддержку баз данных для PostgreSQL, SQLite, Microsoft SQL Server(Справочник по API), Oracle, IBM DB2 & Cloudscape, Apache Derbyи даже ODBC < / а>.

Все современные версии PHP включают в себя PDO: встроенный библиотека абстракций доступа к даннымс широкими возможностями подключения. Совсем недавно появились расширения PECL, которые предлагают поддержку базы данных «NoSQL», включая Apache Thrift(для Apache Cassandra), MongoDB , Redis и другие.

Полезный сторонний код и инструменты

В дополнение к обширной функциональности, предоставляемой в PHP Core и через PEAR и PECL, есть несколько заслуживающих внимания сторонних вкладов в мир PHP, некоторые из которых перечислены ниже:

Управление пакетами с помощью Composer

Composer- это инструмент управления пакетами для PHP, созданный на основе npm для Node.js и Bundler для Ruby. Это позволяет указывать зависимости для каждого проекта в файле JSON.

Composer использует пакеты из Packagist, которые быстро расширяются и содержат многие из самых популярных библиотек PHP.

Композитор решает следующие проблемы:

  1. У вас есть проект, который зависит от нескольких библиотек.
  2. Некоторые из этих библиотек зависят от других библиотек.
  3. Вы объявляете вещи, от которых зависит.
  4. Composer определяет, какие версии каких пакетов необходимо установить, и загружает их в каталог (обычно vendor) в вашем проекте.

Ничего не приходит бесплатно. Программное обеспечение, загруженное с помощью Composer, может содержать ошибки, как и любое другое, включая уязвимости в системе безопасности. Вы несете ответственность за то, чтобы знать, что вы устанавливаете и обновляете, когда это необходимо для получения исправлений безопасности.

Инструменты обеспечения качества

Стандарты и соглашения по кодированию

Несколько стандартов кодирования были предложены и приняты Группой взаимодействия PHP Framework (PHP-FIG). Они известны как Рекомендации по стандартам PHP (PSR). По состоянию на 2 июля 2017 года действуют следующие рекомендации:

Полный список всех рекомендаций вместе с их статусом можно найти на странице рекомендаций PHP-FIG


Справка

Официальный логотип: