[MMO] Core Library
Библиотека вспомагательных функций для аддонов [MMO]
Совместимость с XenForo
  1. XF 2.0
  2. XF 2.1
  3. XF 2.2
  4. XF 2.3
Подробнее
https://xenforo.com/community/resources/mmo-core-library.8386/
Библиотека, содержащая вспомогательные функции для наших дополнений.

1. Введение

Во время использования добавьте раздел require в , чтобы задокументировать зависимость:
JSON:
{
    "require": {
        "MMO/CoreLib": [
            2020270,
            "[MMO] Core Library v2.2.2+"
        ]
    }
}

2. Дополнения к шаблонам

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

Функция шаблона: mcl_diff_for_human
Получить разницу во времени в удобном для чтения формате в текущей локали

Функция шаблона: mcl_phrase_plural
После определения фразы перевода, которая имеет параметры плюрализации, вы можете использовать mcl_phrase_pluralфункцию для извлечения фразы для заданного «количества».

3. Параметры

MMO\CoreLib\Option\UserGroup — Отображает список групп пользователей с возможностью выбора типа флажка.
MMO\CoreLib\Option\UserUpgrade — Отображает список акций групп пользователей с возможностью выбора типа флажка
MMO\CoreLib\Option\CustomFields\Contact — Отображает дополнительные поля пользователя типа контакты
MMO\CoreLib\Option\CustomFields\Personal — Отображает дополнительные поля пользователя типа персональные данные
MMO\CoreLib\Option\CustomFields\Prefefernces — Отображает дополнительные поля пользователя типа предпочтения

4. Черты. Новое в версии 2.2.3

Macroable — Черта для динамического добавления методов в класс.
PHP:
$macroableClass = new class() {
    use Illuminate\Support\Traits\Macroable;
};

$macroableClass::macro('concatenate', function(... $strings) {
   return implode('-', $strings);
};

$macroableClass->concatenate('one', 'two', 'three'); // returns 'one-two-three'

Вызываемые объекты, переданные в macroфункцию, будут привязаны к class
PHP:
$macroableClass = new class() {
 
    protected $name = 'myName';
 
    use Illuminate\Support\Traits\Macroable;
};

$macroableClass::macro('getName', function() {
   return $this->name;
};

$macroableClass->getName(); // returns 'myName'

5. Коллекции. Новое в версии 2.2.3

Класс MMO\CoreLib\Util\Collection предоставляет текучую, удобную оболочку для работы с массивами данных. Помощник collect возвращает новый MMO\CoreLib\Util\Collection экземпляр для заданного массива. Таким образом, создание коллекции так же просто, как:
PHP:
$collection = collect([1, 2, 3]);

Коллекции являются «макропригодными», что позволяет вам добавлять дополнительные методы в класс Collection во время выполнения. MMO\CoreLib\Util\Collection метод макроса класса принимает замыкание, которое будет выполнено при вызове вашего макроса. Замыкание макроса может обращаться к другим методам коллекции через $this, как если бы это был настоящий метод класса коллекции.

6. Заключение

На этом этапе я должен признать работу Тейлора Отвелла и других участников Laravel PHP Framework - [MMO] Core Lib была в значительной степени вдохновлена фреймворком, разработанным для Laravel, и некоторые классы отражения взяты непосредственно из компонента Illuminate\Support. Библиотека также использует некоторые отдельные библиотеки из фреймворка.

Последние обновления

  1. [MMO] Core Library v2.2.7

    Исправлен неверный идентификатора в опции платных повышений пользователя Добавлена новая опция...
Сверху Снизу