refactor: 后面横幅分页接口图片输出修改为缩略图
This commit is contained in:
@@ -60,7 +60,8 @@ class BannerItem
|
|||||||
->paginate([
|
->paginate([
|
||||||
'list_rows' => $param['size'],
|
'list_rows' => $param['size'],
|
||||||
'page' => $param['page']
|
'page' => $param['page']
|
||||||
]);
|
])
|
||||||
|
->each(fn($item) => $item->image = thumb($item->image));
|
||||||
|
|
||||||
return success('获取成功', $banner_items);
|
return success('获取成功', $banner_items);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -103,3 +103,33 @@ if (!function_exists('array_to_tree')) {
|
|||||||
return $ret;
|
return $ret;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!function_exists('thumb')) {
|
||||||
|
/**
|
||||||
|
* 获取缩略图
|
||||||
|
* @param string $url 图片地址
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
function thumb(?string $url): string
|
||||||
|
{
|
||||||
|
if (empty($url)) {
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
if (
|
||||||
|
str_contains($url, '_thumb') ||
|
||||||
|
\think\helper\Str::startsWith($url, ['http://', 'https://']) ||
|
||||||
|
!\think\helper\Str::endsWith($url, ['.png', '.jpg', '.jpeg', '.gif', '.tif', '.svg', '.webp', '.bmp'])
|
||||||
|
) {
|
||||||
|
return $url;
|
||||||
|
}
|
||||||
|
|
||||||
|
$idx = mb_strripos($url, '.', 0, 'utf-8');
|
||||||
|
if ($idx === false) {
|
||||||
|
return $url;
|
||||||
|
}
|
||||||
|
|
||||||
|
$len = mb_strlen($url, 'utf-8');
|
||||||
|
|
||||||
|
return mb_substr($url, 0, $idx, 'utf-8') . '_thumb' . mb_substr($url, $idx, $len - $idx, 'utf-8');
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -71,36 +71,6 @@ if (!function_exists('style')) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!function_exists('thumb')) {
|
|
||||||
/**
|
|
||||||
* 获取缩略图
|
|
||||||
* @param string $url 图片地址
|
|
||||||
* @return string
|
|
||||||
*/
|
|
||||||
function thumb(string $url): string
|
|
||||||
{
|
|
||||||
if (empty($url)) {
|
|
||||||
return '';
|
|
||||||
}
|
|
||||||
if (
|
|
||||||
str_contains($url, '_thumb') ||
|
|
||||||
\think\helper\Str::startsWith($url, ['http://', 'https://']) ||
|
|
||||||
!\think\helper\Str::endsWith($url, ['.png', '.jpg', '.jpeg', '.gif', '.tif', '.svg', '.webp', '.bmp'])
|
|
||||||
) {
|
|
||||||
return $url;
|
|
||||||
}
|
|
||||||
|
|
||||||
$idx = mb_strripos($url, '.', 0, 'utf-8');
|
|
||||||
if ($idx === false) {
|
|
||||||
return $url;
|
|
||||||
}
|
|
||||||
|
|
||||||
$len = mb_strlen($url, 'utf-8');
|
|
||||||
|
|
||||||
return mb_substr($url, 0, $idx, 'utf-8') . '_thumb' . mb_substr($url, $idx, $len - $idx, 'utf-8');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!function_exists('get_path_from_img_tag')) {
|
if (!function_exists('get_path_from_img_tag')) {
|
||||||
/**
|
/**
|
||||||
* 从img标签中获取图片路径
|
* 从img标签中获取图片路径
|
||||||
@@ -128,7 +98,8 @@ if (!function_exists('lang_i18n')) {
|
|||||||
* @param string $lang 语言标识
|
* @param string $lang 语言标识
|
||||||
* @return string
|
* @return string
|
||||||
*/
|
*/
|
||||||
function lang_i18n(string $name, array $vars = [], string $lang = '') {
|
function lang_i18n(string $name, array $vars = [], string $lang = ''): string
|
||||||
|
{
|
||||||
if (is_null($name)) {
|
if (is_null($name)) {
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user