Объявление и использование пространств имён
Оборачивайте классы в пространства имён и импортируйте их с помощью инструкций use
«Объявление и использование пространств имён» — бесплатный урок PHP Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения PHP Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс PHP Academy содержит 4 уроков всего.
Что такое пространство имён?
Пространство имён объединяет связанные классы, функции и константы, предотвращая конфликты имён между библиотеками.
Объявление пространства имён
Используйте ключевое слово namespace в качестве первого выражения в файле PHP (после <?php).
<?php
namespace App\Services;
class Logger {
public function log(string $msg): void {
echo $msg;
}
}Сегменты пространства имён
Сегменты разделяются обратными косыми чертами (\). При автозагрузке PSR-4 каждый сегмент обычно соответствует каталогу.
Импорт с помощью use
Ключевое слово use импортирует полное имя класса, чтобы на него можно было ссылаться по короткому имени.
<?php
namespace App\Controllers;
use App\Services\Logger;
class HomeController {
public function index(): void {
$logger = new Logger();
$logger->log("visited");
}
}Полные имена
Чтобы сослаться на класс без use, добавьте в начало обратную косую черту.
<?php
$logger = new \App\Services\Logger();
$logger->log("Hello");Глобальное пространство имён
Код без пространства имён находится в глобальном пространстве имён. Встроенные классы, такие как \DateTime, также находятся там. Внутри пространства имён добавляйте префикс \.
Импорт функций и констант
Используйте use function и use const для импорта символов, не являющихся классами.
<?php
namespace App;
use function App\Utils\formatDate;
use const App\Utils\DATE_FORMAT;
echo formatDate(time(), DATE_FORMAT);Групповые объявления use
Импортируйте несколько символов в одном сгруппированном блоке use (PHP 7 и выше).
<?php
use App\Models\{User, Post, Comment};Одно пространство имён на файл
Несколько объявлений пространств имён в одном файле разрешены, но не рекомендуются. Для ясности и совместимости с автозагрузчиком предпочтительно использовать одно пространство имён на файл.
Распространённые соглашения
Laravel и Symfony используют App\ как корневое пространство имён, сопоставленное с src/ или app/ в composer.json.
Организация подпространств имён
Группируйте код по функциональности или слою: App\Http\Controllers, App\Domain\Orders, App\Infrastructure\Database.
Повторение: пространства имён
Основные положения: namespace должен быть первым выражением; use импортирует символы; обратная косая черта разделяет сегменты; для глобальных классов внутри пространства имён используйте префикс \.
Быстрая проверка
Какое ключевое слово импортирует класс из другого пространства имён?
Часто задаваемые вопросы
Урок «Объявление и использование пространств имён» бесплатный?
Да — полный текст урока «Объявление и использование пространств имён» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс PHP Academy, подпишись на CoddyKit PRO. Курс PHP Academy содержит 4 уроков всего.
Чему я научусь в уроке «Объявление и использование пространств имён»?
Оборачивайте классы в пространства имён и импортируйте их с помощью инструкций use Ты практикуешь PHP Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать PHP Academy?
Предыдущий опыт не требуется. PHP Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.
Сколько времени занимает урок «Объявление и использование пространств имён»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке PHP Academy?
Да. Каждый урок PHP Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Объявление и использование пространств имён
- Вложенные пространства имён и псевдонимы
- Стандарт автозагрузки PSR-4
- Регистрация автозагрузчиков