Расширение:PhpTags

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page Extension:PhpTags and the translation is 48% complete.

Outdated translations are marked like this.
Other languages:
Deutsch • ‎English • ‎català • ‎dansk • ‎español • ‎français • ‎italiano • ‎polski • ‎português • ‎português do Brasil • ‎sicilianu • ‎suomi • ‎русский • ‎العربية • ‎中文 • ‎日本語
Справка по расширениям MediaWiki
OOjs UI icon advanced.svg
PhpTags
Статус релиза: бета
Реализация Tag, Parser function, Hook
Описание Позволяет пользователям использовать Магические выражения с синтаксисом PHP
Автор(ы) Pavel Astakhov (pastakhovtalk)
Последняя версия 5.5.0 (2015-11-20)
MediaWiki 1.25+
PHP 5.3+
Изменения БД Нет
Лицензия GNU General Public License 2.0 or later
Загрузка
Пример test.foxway.org
Параметры
  • $wgPhpTagsMaxLoops
  • $wgPhpTagsNamespaces
  • $wgPhpTagsBytecodeExptime
Тэги
phptag
Использованные hook'и
ParserFirstCallInit
UnitTestsList
ParserLimitReport
PhpTagsRuntimeFirstInit
ParserAfterTidy
ArticleDeleteComplete
PageContentSaveComplete
CodeMirrorGetExtensionMode
Переведите расширение PhpTags если оно доступно на translatewiki.net
Проверьте использование и версию.
Проблемы Открытые задачи · Сообщить об ошибке

Расширение PhpTags реализует концепцию Магических выражений с синтаксисом языка программированияPHP которое позволяет вам создавать и использовать совместимые не монолитные расширения для MediaWiki, что значительно увеличивает удобство, гибкость и производительность. Подробнее ...

Description

Расширение PhpTags имеет свою собственную среду выполнения PHP кода, которая поддерживает скалярные типы данных, массивы, переменные, операторы, управляющие конструкции. Она также поддерживает константы, функции и объекты, но не содержит реализации какой-либо из них за исключением некоторых языковых конструкций.

Когда используется функция, объект или константа, PhpTags вызывает соответствующее расширение. Таким образом, набор доступных констант, функций, объектов и действий которые они производят зависит только от дополнительно установленных совместимых расширений, которые можно найти здесь.

PhpTags разработан таким образом, чтобы быть максимально похожим на нативный PHP, поэтому у вас должна возникнуть иллюзия непосредственного исполнения кода PHP, хотя этого никогда не происходит.

Использование

Ваш код должен быть заключен между тегами <phptag> и </phptag>. Он может находиться в любом пространстве имен, если это не было запрещено переменной $wgPhpTagsNamespaces.

<phptag>
$foo = 'hello world';
echo ucfirst( $foo . "!!!\n" );
</phptag>

Это отобразит строку:

Hello world!!! 

Демонстрация

функция ucfirst реализована в расширении Extension:PhpTags_Functions. Более подробную информацию вы можете найти в кратком руководстве.

Установка

  • Если вы используете Vagrant , установите с помощью vagrant roles enable phptags --provision
Ручная установка
  • Скачайте и распакуйте файл(ы) в папку с названием PhpTags в вашу папку extensions/.
  • Добавьте следующий код в файл LocalSettings.php (в самый конец):
    require_once "$IP/extensions/PhpTags/PhpTags.php";
    
  • Yes Готово – Перейдите на страницу «Special:Version» на своём сайте, чтобы удостовериться в том, что расширение успешно установлено.

Установка необязательных компонентов

Установка дополнительных компонентов

Расширение PhpTags реализует только концепцию Магических выражений и не содержит реализации каких-либо констант, функций или объектов.

Поэтому вам необходимо также установить дополнительные расширения которые совместимы с Магическими выражениями PhpTags.

Основные из них:

  • PhpTags Wiki - позволяет получать различные данные из MediaWiki
  • PhpTags Functions - содержит множество функций для обработки данных
  • PhpTags Widgets - отображает данные различными способами

Others are Extension:PhpTags SMW and Extension:PhpTags Storage.

Конфигурационные параметры

Name Description Default
$wgPhpTagsMaxLoops Maximum number of allowed loops 1000
$wgPhpTagsNamespaces Array of namespaces in which the PhpTags extension is allowed to use. Boolean true allows usage in all namespaces true
$wgPhpTagsBytecodeExptime Storage time of the compiled bytecode in cache (30 days) 2592000 (30 дней)