Константы в PHP

Опубликовано в: PHP шпаргалка, код, заметки

Константы в PHP

🔹 Как определить константы в PHP

📌 Константа – это переменная, значение которой нельзя изменить после объявления.

PHP поддерживает два способа создания констант:

1️⃣ define() – традиционный способ

2️⃣ const – более современный способ


1️⃣ Создание констант с define()

Функция define() создаёт глобальную константу.

define("SITE_NAME", "MyWebsite");

echo SITE_NAME; // Выведет: MyWebsite

Объяснение:

  • Имя константы пишется БОЛЬШИМИ БУКВАМИ (рекомендуется).
  • Не используем $ перед константой (в отличие от переменных).
  • Можно использовать в любом месте кода (даже внутри функций).

2️⃣ Создание констант с const

Другой способ объявления константы – с const.

const SITE_URL = "<https://example.com>";

echo SITE_URL; // <https://example.com>

📌 Разница между define() и const:

МетодГде можно использовать?Когда значение вычисляется?
define("NAME", "value")В любом месте кодаВо время выполнения
const NAME = "value"Только в глобальной области или в классеВо время компиляции

🔹 Пример, где define() сработает, а const – нет:

if (true) {
    define("DYNAMIC_CONST", "Работает!");
    // const STATIC_CONST = "Ошибка!"; ❌
}

3️⃣ Константы внутри классов (const)

Константы можно использовать внутри классов.

class Config {
    const DB_HOST = "localhost";
    const DB_USER = "root";
}

echo Config::DB_HOST; // localhost


4️⃣ Предопределённые константы PHP

PHP имеет встроенные константы, например:

echo PHP_VERSION; // Версия PHP, например: 8.2.1
echo PHP_OS; // Операционная система сервера
echo __FILE__; // Путь к текущему файлу
echo __DIR__; // Директория текущего файла


5️⃣ Константы с массивами (PHP 7+)

В PHP 7+ можно использовать массивы в константах.

define("COLORS", ["красный", "зелёный", "синий"]);

echo COLORS[1]; // зелёный

📌 Итог

СпособПодходит дляМожно ли менять?Где доступен?
define("NAME", "value")Глобальных констант❌ НетВезде
const NAME = "value"Классов и глобальных констант❌ НетТолько в глобальной области
const в классеКонстант внутри класса❌ НетВ классе

✅ Мини-задания

1️⃣ Создайте константу SITE_NAME и выведите её.

2️⃣ Создайте массив цветов в константе и выведите один из них.

3️⃣ Определите класс Config с константой DB_NAME, затем выведите её.

4️⃣ Выведите предопределённую константу PHP_VERSION.

2 минут чтения Sodium Carbonate

Комментарии (0)

Комментарии отсутствуют
Добавление комментариев доступно только зарегистрированным пользователям

Автор контента

webitproff

Оффлайн

Sodium Carbonate

Последняя авторизация: 18.06.2026 10:44

  • Страница размещена: 21.07.2025 07:08
  • Последнее обновление: 21.07.2025 07:08

Похожие страницы

Режимы получения данных, константы PDO FETCH
1 PHP PDO: Режимы получения данных, константы PDO::FETCH_* В прошлой заметке мы познакомились с основами PDO и
Статьи • 23.12.2024 19:12 webitproff