ПРО PHP

ЧТО ЭТО И КАК НАЧАТЬ

PHP — язык для серверной части сайта

PHP с нуля

Серверный язык, на котором работает половина веба

Что такое PHP

PHP — серверный язык программирования. Браузер его не видит: код выполняется на сервере, а тот отдаёт уже готовый HTML. Именно так на сайте появляются формы, вход в личный кабинет и данные из базы.

На PHP работает около трёх четвертей сайтов, где вообще есть серверная часть, — в основном из-за WordPress, Bitrix и готовых хостингов, где он установлен по умолчанию.

Как проходит запрос

Браузер просит /catalog.php. Веб-сервер (Apache или Nginx) передаёт управление PHP, тот читает код, обращается к базе, собирает HTML и возвращает его. Браузер получает только результат — исходный код недоступен.

<?php
echo "Привет, мир";
?>

Что нужно для старта

  • PHP 8.2+ — установщик или сборка XAMPP для Windows.
  • База MySQL или MariaDB — почти любой пример это предполагает.
  • Редактор кода — VS Code или PHPStorm.
  • Хостинг — позже, для публикации. Локально хватит XAMPP.

Основы, без которых не двинуться

  • Переменные — начинаются со знака $: $name = "Анна";
  • Типы — строка, целое, дробное, массив, null; приведение часто неявное.
  • Массивы — основа всего: и списки, и словари задаются одним типом.
  • Функции — function sum($a, $b) { return $a + $b; }.
  • Суперглобальные — $_GET, $_POST, $_SESSION для данных запроса.

База данных

Правильный путь — PDO с подготовленными запросами: он не даёт вставить SQL-код через поле формы.

$stmt = $pdo->prepare("SELECT * FROM posts WHERE id = ?");
$stmt->execute([$id]);
$post = $stmt->fetch();

Старые функции mysql_* удалены из языка ещё в PHP 7, а конкатенация переменных в запрос — прямой путь к SQL-инъекции.

Фреймворк или чистый PHP

Начинать стоит с чистого PHP: понять, что такое запрос, сессия и база. Дальше — Laravel или Symfony, где маршрутизация, шаблоны и работа с базой уже собраны. На WordPress пишут без фреймворка, но с его собственной архитектурой.

Где PHP не подходит

Высоконагруженные сервисы на миллионы запросов, задачи с длительными вычислениями и обменом в реальном времени лучше решать на Go, Python или Node.js. PHP хорош в веб-сайтах, админках, API средней нагрузки и там, где нужен дешёвый хостинг.

Нужен сайт, а не статья?

Напишу серверную часть на PHP или Laravel: формы, личный кабинет, интеграции с 1С и оплатой, API. С 2009 года, по договору, с поддержкой после запуска.

ОБСУДИТЬ ПРОЕКТ

Полезно по теме: про WordPress, про Django, про JavaScript.