irbees2008/ng-helpers
NGCMS插件辅助函数集合
dev-master
2021-06-21 14:16 UTC
Requires
- php: ^7.3|^8.0
This package is auto-updated.
Last update: 2024-09-21 21:32:05 UTC
README
系统要求
在使用插件之前,您需要确保您的服务器满足以下要求
- PHP ^7.3|^8.0
连接
插件有两个版本,每个版本都支持其自己的编码类型:UTF-8 和 Windows-1251。您可以通过下载适合您项目的编码版本的插件来连接
或者使用 Composer 管理器
composer require irbees2008/ng-helpers
请注意,UTF-8 编码是默认的。
配置
目前插件没有设置,但在控制面板中激活插件是必须的。
使用
由于插件使用 Plugins 命名空间,因此在使用单独的函数之前,如果当前命名空间不同,则需要明确指定函数名称。
// Импортирование необходимых функций (PHP 5.6+) use function Plugins\functionName; // Импортирование необходимых функций // с использованием псевдонима функции (PHP 5.6+) use function Plugins\functionName as func;
可用方法
array_dotset
使用“点”表示法设置数组元素的值。
use function Plugins\array_dotset; $array = [ 'keys' => [ 'first' => 450, 'second' => 460 ], ]; array_dotset($array, 'keys.second', 800); // [ // 'keys' => [ // 'first' => 450, // 'second' => 800 // ], // // ]
cache
从缓存中获取数据,或将指定数据保存到缓存中。
use function Plugins\cache; // Сохранить данные в кеш. cache($plugin, md5('key'), 'value');
use function Plugins\cache; // Получить данные из кеша. $value = cache($plugin, md5('key'));
请注意,指定的插件
$plugin必须有cache设置,其值必须设置为true。
cacheRemember
从缓存中获取数据,或执行闭包并保存结果到缓存。
use function Plugins\cacheRemember; $rows = cacheRemember($plugin, md5('key'), function () { return database() ->select( "select * from `".prefix."_news` where `approve` = 1 order by `views` desc limit 20" ); });
请注意,指定的插件
$plugin必须有cache设置,其值必须设置为true。
catz
根据标识符获取分类,或获取所有分类的数组。
use function Plugins\catz; $categories = catz(); // Итерация всех категорий. foreach ($categories as $id => $data) { // }
use function Plugins\catz; // Получить категорию с идентификатором `28`. $category = catz(28);
config
获取系统配置的值。
use function Plugins\config; $value = config('key', 'default');
database
获取当前数据库连接。
use function Plugins\database; $rows = database()->select( "select * from `".prefix."_news` where `approve` = 1 order by `views` desc limit 20" );
请注意,使用此函数时,您对执行的数据库查询负有全部责任 (请参阅维基百科)。
dd
打印变量、变量数组或对象并停止脚本执行。
use function Plugins\dd; $array = [ 'keys' => [ 'first' => 450, 'second' => 460 ], ]; dd($array); // Array // ( // [keys] => Array // ( // [first] => 450 // [second] => 460 // ) // // )
请注意,仅在应用程序调试模式下允许使用此功能。
pageInfo
设置当前页的系统信息。
use function Plugins\pageInfo; pageInfo('key', 'value');
// Примеры использования. $breadcrumbs[] = [ 'link' => $this->pluginLink, 'text' => trans('x_filter:title'), ]; pageInfo('info.breadcrumbs', $breadcrumbs); pageInfo('meta.description', $description); pageInfo('meta.keywords', $keywords);
request
从全局 $_REQUEST 获取值。
use function Plugins\request; $value = request('key', 'default');
// Пример использования. $currentPage = (int) request('page', 1);
setting
根据键获取插件设置,或设置设置数组。
use function Plugins\setting; // Получить настройку плагина. $value = setting($plugin, 'key', 'default'); // Задать массив настроек плагина. setting($plugin, [ 'key' => 'value', 'another_key' => 'another_value' ]);
使用示例
// Получить настройку плагина. $cacheExpire = (int) setting($plugin, 'cacheExpire', 60);
// Задать массив настроек плагина. setting($plugin, [ // Использовать кеширование данных. 'cache' => 0, // Период обновления кеша. 'cacheExpire' => 60, ]);
starts_with
确定传递的字符串是否以指定的子字符串开头。
use function Plugins\starts_with; $result = starts_with('Строка для примера', 'Строка '); // true
trans
获取字符串的翻译。
use function Plugins\trans; $string = trans('key');
// Пример использования. $charset = trans('encoding');
value
为传递的值返回默认值。
use function Plugins\value; $result = value(true); // true $result = value(function () { return false; }); // false
view
输出具有指定上下文的模板并将其作为字符串返回。
use function Plugins\view; $context = [ 'key' => 'value' ]; return view($template, $context);
许可证
ng-helpers 是开源软件,按照 MIT 许可证分发。