在开发过程中都会遇到各种各样的数据处理,特别是每个模块下都有相同的数据逻辑,会自己编写很多相同的代码。今天分享一个扩展开源包提供给大家参考,可以自己手动编写代码也可以使用扩展包执行,提高开发效率才是关键。
一、安装使用
composer require devkeep/tools
二、工具函数集合
// 对象转数组
devkeep\Tools\Tools::toArray()
// 无限级归类
devkeep\Tools\Tools::tree()
// 二维数组去重
devkeep\Tools\Tools::arrayMultiUnique()
// 二维数组排序
devkeep\Tools\Tools::arrayMultiSort()
// 保留小数
devkeep\Tools\Tools::format()
// GET请求
devkeep\Tools\Tools::get()
// POST请求
devkeep\Tools\Tools::post()
// 数组转XML
devkeep\Tools\Tools::arrayToXml()
// XML转数组
devkeep\Tools\Tools::xmlToArray()
// 文件打包下载
devkeep\Tools\Tools::addZip()
// 压缩包解压
devkeep\Tools\Tools::unZip()
// 文件下载
devkeep\Tools\Tools::download()
// 发送邮件
devkeep\Tools\Tools::sendMail()
// 导出excel
devkeep\Tools\Tools::exportExcel()
// 生成二维码
devkeep\Tools\Tools::qrcode();
三、测试实例
// 保留两位小数
$res = devkeep\Tools\Tools::format(100, 2);
// 100.00
// 二维数组排序
$res = devkeep\Tools\Tools::arrayMultiSort([
['id' => 1],
['id' => 2],
['id' => 3],
], 'id', 'desc');
// [
// ['id' => 3],
// ['id' => 2],
// ['id' => 1],
// ]
// tree归类(非递归)
$res = devkeep\Tools\Tools::tree([
[
'id' => 1,
'pid' => 0,
'title' => 'title'
],
[
'id' => 3,
'pid' => 1,
'title' => 'title3'
],
[
'id' => 4,
'pid' => 1,
'title' => 'title4'
],
]);
// Array
// (
// [0] => Array
// (
// [id] => 1
// [pid] => 0
// [title] => title
// [child] => Array
// (
// [0] => Array
// (
// [id] => 3
// [pid] => 1
// [title] => title3
// [child] => []
// )
// [1] => Array
// (
// [id] => 4
// [pid] => 1
// [title] => title4
// [child] => []
// )
// )
// )
// )
// 导出Excel
devkeep\Tools\Tools::exportExcel(['标题','价格', '重量'], [
['标题一', '1.00', '1KG'],
['标题二', '2.00', '2KG'],
], 'abc');
// 生成二维码
devkeep\Tools\Tools::qrcode('http://www.baidu.com', false, 'L', 6, 2);
// 发送邮件
$res = devkeep\Tools\Tools::sendMail([
'host' => 'smtp.aliyun.com',
'port' => 465,
'username' => 'devkeep@aliyun.com',
'password' => 'xxxx',
'address' => 'devkeep@aliyun.com',
'title' => '测试邮件',
], [
'mail' => '363927173@qq.com',
'name' => '张三',
'subject' => '主题',
'body' => '这是一个邮件'
]);
var_dump($res);
实际应用自行下载测试,适合自己的代码才是最好的代码。