Jump to main content Jump to doc navigation

modX::loadClass

Устарело с 3.0 — обращайтесь к классам MODX\Revolution\* напрямую и пусть их подгружает PSR-4 автозагрузчик.

Имя разрешается в следующем порядке:

  1. Уже существующее имя с пространством имен возвращается без изменений.
  2. Простое или точечное имя вроде modx.modChunk отображается на MODX\Revolution\. Для старого имени создаётся class_alias(), если его нет, фиксируется устаревание, а возвращается PSR-4 имя.
  3. Если эта догадка не сработала, метод возвращает то, что ответит xPDO::loadClass(): имя класса или false.

Непустой $path отключает шаг 2. $path, $ignorePkg и $transient действуют только на шаге 3.

Синтаксис

bool|string loadClass (string $fqn, [string $path = ''], [bool $ignorePkg = false], [bool $transient = false])
  • $fqn (string) имя класса: простое, точечное или с пространством имен
  • $path (string) каталог для поиска в xPDO::loadClass(), по умолчанию ''
  • $ignorePkg (bool) пропустить поиск пакета внутри xPDO::loadClass(), по умолчанию false
  • $transient (bool) загрузить без карты метаданных внутри xPDO::loadClass(), по умолчанию false

Пример

$class = $modx->loadClass('modx.modChunk');
// 'MODX\Revolution\modChunk'

$missing = $modx->loadClass('modMissingClass');
// false, а xPDO пишет "Could not load class"

Смотрите также

Support the team building MODX with a monthly donation.

The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.

Backers

  • modmore
  • STERC
  • Digital Penguin
  • Jens Wittmann – Gestaltung & Entwicklung
  • CrewMark
  • Fabian Christen
  • Sepia River Studios
  • Dannevang Digital
  • Alex
  • A. Moreno
  • Chris Fickling
  • Stéphane Jäggi
  • Murray Wood
  • Anton Tarasov
  • JT Skaggs
  • deJaya
  • Lefthandmedia
  • eydolan
  • Following Sea
  • Guido Gallenkamp
  • YJ
  • Raffy
  • Snow Creative
  • Nick Clark
  • Guest
  • Helen
  • krisznet
  • Yanni
  • Richard

Budget

$194 per month—let's make that $500!

Learn more