安装

composer require intervention/image

使用文档http://image.intervention.io/getting_started/introduction

类库

<?php
/*
 * 图片处理
 */

namespace app\common\services;

use Intervention\Image\ImageManager;

class ImageService {

    //client
    protected $client;

    public function __construct() {
        $this->client = new ImageManager(array('driver' => $this->getClient()));
    }

    /*
     * 本地用gd库,线上用imagick
     */
    protected function getClient() {

        if (\think\Env::get('APP_LOCAL') == 'LOCAL') {
            return 'gd';
        } else {
            return 'imagick';
        }
    }

    /*
     * 适合—合并裁剪和调整大小
     *  top-left
        top
        top-right
        left
        center (default)
        right
        bottom-left
        bottom
        bottom-right
     */
    public function fit($file = '',$width = 0,$height = 0,$callback = null,$position = 'center') {
        return $this->client->make($file)->fit($width,$height,$callback,$position);
    }

}

解决 laravel-admin between datetime 假如数据库是时间戳int类型无法筛选。

laravel-admin默认的between->datetime(),查询默认是datetime类型,但是假如数据库是时间戳类型就会报错,又不想改底层文件的话可以试试加自定义筛选功能...

阅读全文

php解析英文语句,自动分解。

参考:https://www.php.net/manual/en/function.str-split.php 最近碰到一个问题,客户的英文地址太长,超出接口api字段长度,所以需要解析下语句分解发送。 ...

阅读全文

记录一个laravel-excel导出表格值为0导出excel显示空的解决方法。

最近在使用laravel-excel导出表格的时候,发现假如字段值为0的情况下,导出的excel中直接显示为空,找到一个方法解决,如下. 在laravel-excel的config配置中...

阅读全文

欢迎留言