Skip to content

🛠️ Хелперы

Хелперы — это глобальные функции, которые облегчают доступ к ключевым компонентам фреймворка. Они являются обёртками над основными классами и методами, часто используемыми при разработке.

⚙️ modx()

Возвращает глобальный экземпляр modX.

php
$modx = modx();

🧾 query(string $class)

Быстрое создание запроса к таблице модели.

php
query(modResource::class); 
// или
pbQuery::table(modResource::class);

⚙️ config(string $key, $default = null)

Получает значение из конфигурации.

php
$debug = config('app.debug', false);
// или
Config::get('app.debug', false) 
    ?? $modx->getOption('app.debug', null, false);

📁 Конфигурации хранятся в папке: core/App/config/

📥 request(string $key = '')

Возвращает текущий HTTP-запрос или конкретное значение.

php
$request = request();            // $request = Request::getInstance()
$name = request('name');         // $request->get('name');
request()->validate([...]);      // $request->validate([...]);

🌐 uri()

Возвращает текущий URI без расширений и ведущих/замыкающих слэшей.

php
$uri = uri();  
// например: /about.html → "about"
//           /blog/post/ → "blog/post"

🏷️ alias()

Возвращает текущий алиас страницы (последнюю часть URI).

php
$alias = alias();  
// например: /blog/post → "post"
//           /about → "about"

💾 cache(string $key, $value = null, int $ttl = 3600)

Получение или установка значения в кэше.

php
$data = cache('menu');                // $data = Cache::get('menu')
cache('menu', $items, 600);           // Cache::set('menu', $items, 600)

📤 response($content = '', int $status = 200, array $headers = [])

Создаёт и возвращает HTTP-ответ.

php
$response = response();                          // $response = new Response();
return response('OK');                           // $response->text('OK')
return response(['status' => 'ok'], 200);        // $response->json([...])

📌 Тип ответа определяется автоматически: text, json или object.

validate(array $data, array $rules, array $messages = [])

Запускает валидацию данных.

php
$validator = validate(
    ['email' => 'john@example.com'],
    ['email' => 'required|email']
);

// или
$validator = Validator::make($data, $rules, $messages);

🖼️ view(string $template, array $params = [])

Рендерит шаблон с параметрами.

php
$html = view('components.card', ['title' => 'Dashboard']);

// или

$html = View::make('components.card', ['title' => 'Dashboard']);

🔁 redirect(...$args)

Создаёт редирект.

php
$redirect = redirect();         // $redirect = Redirect::getInstance();
redirect('/login');             // $redirect->to('/login');
redirect()->back();             // $redirect->back();

🧭 route(string $name, array $params = [])

Генерация ссылки по имени маршрута.

php
$url = route('post.show', ['id' => 10]); 
// или
Route::route('post.show', ['id' => 10])

🌍 lang(string $key, array $replace = [], string $locale = '')

Получение перевода строки.

php
lang('messages.welcome'); 
// or
Lang::get('messages.welcome');

📁 Переводы хранятся в папке: core/App/lang/{locale}/

🔐 auth(string $context = '')

Проверка авторизации пользователя в заданном (или текущем) контексте.

php
if (auth()) {
    echo 'Вы авторизованы';
}

if (auth('mgr')) {
    echo 'Вы авторизованы в контексте "mgr"';
}

🔁 То же самое, что:

php
$modx->user && $modx->user->isAuthenticated($context ?: $modx->context->key);

abort(int $code = 404, string $text = '')

Останавливает выполнение и возвращает HTTP-ошибку.

php
abort(403, 'Доступ запрещён');
// или
response()->abort(403, 'Доступ запрещён')->send();

📄 logger($message)

Запись ошибки в лог.

php
logger('Произошла ошибка при сохранении данных');
// или
Log::error('Произошла ошибка при сохранении данных')

© PageBlocks 2019-present