littlemo/utils

the littlemo common utils

v1.4.2 2024-06-13 08:57 UTC

README

Total Downloads Latest Stable Version Latest Unstable Version PHP Version License

介绍

php常用工具库

安装

composer.json

{
    "require": {
        "littlemo/utils": "1.4.*"
    }
}
composer require littlemo/utils:"1.4.*"

使用

统计单位时间内同一个IP请求次数

需要安装redis扩展,并启动 redis 服务

示例代码

use littlemo\utils\RequestRate;
$config=[
    'prefix'=>'ip',//缓存前缀
    'time'=>'60',//单位时间(s)
    'maxCount'=>'30',//单位时间最大请求次数
    'cache'=>[
        'type' => 'redis',//缓存类型,目前仅支持redis
        'host' => '127.0.0.1',//缓存服务连接地址
        'port' => '6379',//缓存服务端口
        'select' => 0,//redis库号,一般取值范围(0-15)
    ]
]

//实例化对象
$requestRate = new RequestRate($config);

//获取错误信息
$error = $requestRate->$getMessage();

//初始化缓存服务,实例化对象时回自动初始化缓存服务
$requestRate->setCacheObj();

//验证器
$result = $requestRate->check();
if($result === false){
    echo $requestRate->$getMessage();
}else{
    echo '未达到请求次数上限';
}

自动更新Git

仅支持gitee

示例代码
use littlemo\utils\Git;

$token = 'XXXXXXX';

//实例化对象
$Git = new Git($token);

//验证器
$error = $Git->check($token);

/**
* 拉取代码
* @param string $path   执行脚本相对路径;默认:'..'
* @param string $exec   执行脚本;默认:'git pull origin master'
*/
$Git->pull($path, $exec);
  • 拉取代码的日志会直接在页面输出

下载文件

示例代码
use littlemo\utils\Download;

/**
* 下载文件
* @param string $file      文件路径(文件所在磁盘的绝对路径)
* @param string $filename  带后缀的(自定义)文件名称
*/

Download::file($file, $filename);

Tools

use littlemo\utils\Tools;

生成随字符串

示例代码
$string = Tools::createNonceStr($length , $enum ,  $dict);

参数说明

制作签名

示例代码
$string = Tools::createSign($params, $params_disorder, $type);

参数说明

type可选参数说明

Banner

use littlemo\utils\Banner;

合成图片

示例代码
Banner::create(720, 780);//创建图像
Banner::setBgColor();//设置图像背景颜色
Banner::addImage('11.jpg',' 0, 0',' 0, 0');//添加图片

$color = Banner::setColor(0, 0, 0);//获取颜色int值
Banner::addText('20211225195933079158', 20, '200,740',  $color);//添加文字

Banner::output();//输出图像
Banner::save(date("YmdHis") . '.png');//保存图像
print_r(Banner::getMessage());//输出错误信息

参与贡献

  1. littlemo

特技

  • 简洁易用