Короткий довідник Fat Framework для PHP

Системні змінні

Щоб використовувати ці змінні, просто отримайте їх з об'єкта $ f3, як у:

framework

АГЕНТ

Тип: рядок, лише для читання

Рядок, що містить автоматично виявлений користувацький агент HTTP, наприклад 'Mozilla/5.0 (Linux; Android 4.2.2; Nexus 7) AppleWebKit/537.31'

Тип: bool, лише для читання

ІСТИНА, якщо виявлено запит XML HTTP, інакше - FALSE. Значення за замовчуванням: Результат виразу $ headers ['X-Request-With'] == 'XMLHttpRequest'

ПСЕВЕМІЇ

Тип: рядок

Містить псевдонім (назва) поточного маршруту. Порожній, якщо поточний маршрут не названий.

НИКНЕЙМИ

Тип: масив

Цей масив містить усі названі маршрути, які можна використовувати для відображення відповідних URL-адрес посилань у ваших шаблонах.

ЗАВАНТАЖИТИ

Тип: рядок | масив За замовчуванням: './'

Шлях пошуку (** s **) для визначених користувачем класів PHP, які фреймворк намагатиметься завантажити автоматично під час виконання. Визначаючи кілька шляхів, ви можете використовувати конвеєр (|), кому (,) або крапку з комою (;) як роздільник шляхів.

Детальніше див. Тут.

Тип: рядок, лише для читання За замовчуванням: автоматично виявляється

Шлях до основного/переднього контролера index.php.

Тип: рядок, лише для читання

Тіло запиту HTTP для повторної обробки. Містить вхідний потік php: //, що використовується запитами PUT, якщо RAW хибний .

КЕШ

Тип: bool | рядок За замовчуванням: ПОМИЛКОВИЙ

Бекенд кешу. F3 може обробляти модуль Memcache, APC, WinCache, XCache та кеш на базі файлової системи.

Наприклад: якщо ви хочете використовувати модуль memcache, потрібен рядок конфігурації, наприклад $ f3-> set ('CACHE', 'memcache = localhost') (порт 11211 за замовчуванням) або $ f3-> set ('CACHE', 'memcache = 192.168.72.72: 11212') .

Якщо встановлено значення TRUE або коли зв’язок із зазначеним сервером з кеш-пам’яттю не вдався, F3 автоматично визначатиме в цьому порядку наявність APC, WinCache, XCache та використовуватиме перший із цих PHP-модулів. Якщо жоден із цих механізмів спільної пам’яті не виявлений або недоступний, серверна база на основі файлової системи використовується в якості резервної копії (каталог за замовчуванням: tmp/cache або ви можете вказати папку за межами області веб-сайту, наприклад $ f3-> set ('КЕШ', 'папка =/var/tmp/f3filescache /') .

Фреймворк не використовує механізм кешування, коли присвоюється значення FALSE.

БЕЗСЛУЧАЙНИЙ

Тип: bool За замовчуванням: ІСТИНА

Зіставлення шаблонів маршрутів із вхідними URI за замовчуванням не враховує регістр. Встановіть значення FALSE, щоб зробити його чутливим до регістру.

Тип: bool, лише для читання

TRUE, якщо запит походить з інтерфейсу командного рядка, FALSE, якщо він надходить з веб-сервера.

Докладніше про обробку запитів CLI див. У режимі CLI.

КОНТЕЙНЕР

Тип: викликається | Збірний | Psr \ Container \ ContainerInterface

Визначає необов’язковий контейнер для введення залежностей, який використовується Base-> call () та системою маршрутизації. CONTAINER підтримує контейнери PSR-11, виклики та класи, що розширюють Prefab. Класи на основі збірних модулів повинні реалізовувати метод get (string $ id). Викликанці отримують запитаний ідентифікатор $ (наприклад, назву класу) як перший аргумент.

Несумісні з API сторонні контейнери можна зробити сумісними з крихітним адаптером.

Примітка: CONTAINER вимагає щонайменше нежирного середовища 3.6.4 .

COOKIE, GET, POST, REQUEST, SESSION, FILES, SERVER, ENV

Тип: масив

Фреймворк-еквіваленти глобальних програм PHP. Для вашої зручності F3 автоматично синхронізує ці змінні з основними глобальними стандартами PHP. Ці змінні можуть використовуватися у всій програмі. Однак безпосереднє використання в шаблонах не рекомендується через ризики безпеки.

Можливо, конфігурація PHP не заповнює всі глобальні ресурси. Якщо, наприклад, відсутні змінні середовища, то вам слід додати E до директиви конфігурації PHP variables_order .

Тип: масив

Параметри конфігурації спільного використання ресурсів спільного використання. Складається з наступних варіантів:

  • заголовки, рядок або масив, за замовчуванням: '', дозволені заголовки у запиті
  • origin, string або false, за замовчуванням: false, дозволений хост джерела, тобто * .mydomain.com
  • облікові дані bool, за замовчуванням: false, дозволити файли cookie
  • expose, рядок або масив, за замовчуванням: false, контролює, які заголовки відповіді піддаються клієнтському браузеру
  • ttl, int, detault: 0, час кешування запиту ОПЦІЙ перед вильотом

Щоб увімкнути базову підтримку CORS, просто встановіть для CORS.origin значення *. Для більш чіткого налаштування ви можете використовувати $ f3-> copy ('HEADERS.Origin', 'CORS.origin'); .

НАЛАГОДЖУВАТИ

Тип: ціле число За замовчуванням: 0

Рівень деталізації трасування стека. Призначте значення від 0 до 3 для підвищення рівня деталізації наступним чином:

  • 0: придушує журнали трасування стека.
  • 1: журнали файлів і рядків.
  • 2: також реєструє класи та функції.
  • 3: також реєструє детальну інформацію про об’єкти.

ДІАКРИТИКА

Тип: масив За замовчуванням: array (), порожній масив

Додаткові пари ключ-значення для перекладу символів із іноземних до ASCII, що використовуються в web-> slug.

DNSBL

Тип: рядок За замовчуванням: '', порожній рядок

Список серверів чорного списку DNS, розділених комами. Framework генерує заборонену помилку 403, якщо IPv4-адреса користувача вказана на вказаних серверах.

EMOJI

Тип: масив За замовчуванням: array (), порожній масив

Додаткові пари ключ-значення маркерів емодзі, які потрібно додати до основного набору, що використовується при перекладі рядка на символи, що підтримуються шрифтом Unicode. (див. \ UTF-> emojify ())

КОДУВАННЯ

Тип: рядок За замовчуванням: 'UTF-8'

Набір символів, що використовується для кодування документів.

ПОМИЛКА

Тип: масив, лише для читання

Інформація про останню помилку HTTP, яка сталася:

  • ERROR.code - це код стану HTTP. напр. 307
  • ERROR.status - це короткий опис коду стану HTTP. напр. "Тимчасова переадресація"
  • ERROR.text містить короткий опис помилки.
  • ERROR.trace використовується для помилок HTTP 500 для отримання трасування стека. рядок
  • ERROR.level - рівень звітування про помилки (E_WARNING, E_STRICT тощо)

ВТЕЧА

Тип: bool За замовчуванням: ІСТИНА

Використовується для ввімкнення/вимкнення автоматичного екранування @tokens, що використовується в шаблонах.

ЗВІЛЬНЕНО

Тип: рядок За замовчуванням: НУЛЬ

Розділений комами список адрес IPv4, які потрібно виключити із пошуку DNSBL.

ВИНЯТК

Тип: об'єкт За замовчуванням: НУЛЬ

Містить об'єкт винятку, коли трапляються необроблені винятки.

ВІДСТУПАТИ

Тип: рядок За замовчуванням: 'en'

Мова (і словник) для використання, якщо перекладу немає.

ФОРМАТИ

Тип: масив

Сховище для правил спеціального формату для додавання підтримки для декількох форматів локалізації або інших випадків. Див. Зразки коду.

ФРАГМЕНТ

Тип: рядок За замовчуванням: НУЛЬ

Частина URI після необов’язкового символу хешу (#) (http://www.example.org/foo.html#bar) FRAGMENT = 'bar'.

Тип: bool За замовчуванням: ІСТИНА

Якщо TRUE, фреймворк після реєстрації трасування стека та помилок зупиняє виконання (вмирає без будь-якого стану), коли виявляється помилкова помилка.

ГОЛОВНИКИ

Тип: масив, лише для читання