50 lines
1.7 KiB
PHP
50 lines
1.7 KiB
PHP
<?php
|
||
// +----------------------------------------------------------------------
|
||
// | Niucloud-admin 企业快速开发的saas管理平台
|
||
// +----------------------------------------------------------------------
|
||
// | 官方网址:https://www.niucloud-admin.com
|
||
// +----------------------------------------------------------------------
|
||
// | niucloud团队 版权所有 开源版本可自由商用
|
||
// +----------------------------------------------------------------------
|
||
// | Author: Niucloud Team
|
||
// +----------------------------------------------------------------------
|
||
namespace core\dict;
|
||
|
||
|
||
/**
|
||
* 图标
|
||
* Class Icon
|
||
* @package core\dict
|
||
*/
|
||
class Icon extends BaseDict
|
||
{
|
||
/**
|
||
* @param array $data
|
||
* @return array
|
||
*/
|
||
public function load(array $data): array
|
||
{
|
||
$sys_path = dirname(app()->getRootPath()) . str_replace('/', DIRECTORY_SEPARATOR, '/admin/src/styles/icon');
|
||
$file_arr = getFileMap($sys_path);
|
||
$icon_arr = [];
|
||
if (!empty($file_arr)) {
|
||
foreach ($file_arr as $ck => $cv) {
|
||
if (str_contains($cv, '.json')) {
|
||
$json_string = file_get_contents($ck);
|
||
$icon = json_decode($json_string, true, 512, JSON_THROW_ON_ERROR);
|
||
$icon_arr[] = $icon;
|
||
}
|
||
}
|
||
}
|
||
|
||
if (count($icon_arr) > 1) {
|
||
$last_icon = array_pop($icon_arr); // 最后一个
|
||
$first_icon = array_shift($icon_arr); // 第一个
|
||
|
||
array_unshift($icon_arr, $last_icon); // 将系统图标放到第一位置
|
||
$icon_arr[] = $first_icon; // 交换位置
|
||
}
|
||
|
||
return $icon_arr;
|
||
}
|
||
} |