A PHP common toolkit.
历经无数个项目沉淀的工具函数,有兴趣的可以一起来维护, 邮箱:service#vipkwd.com
composer require vipkwd/utils
yipeng@mbp vipkwd-framework % php vendor/bin/vipkwd
vipkwd/utils 3.2.0
Usage:
command [options] [arguments]
Options:
-h, --help Display help for the given command. When no command is given display help for the list command
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi| --no-ansi Force (or disable --no-ansi) ANSI output
-n, --no-interaction Do not ask any interactive question
-v| vv| vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
Available commands:
completion Dump the shell completion script
dump Show the class list of Vipkwd/utils package
help Display help for a command
list List commands
load
load:assets Install/update assetes for utils
yipeng@mbp vipkwd-framework % php vendor/bin/vipkwd dump
Idx
Namespace
Class
Method
Type
Arguments
Eg
Comment
1
Vipkwd\Utils
Algorithm
10
:)
:)
:)
经典排序/查找算法
2
Vipkwd\Utils
Async
4
:)
:)
:)
PHP异步回调
3
Vipkwd\Utils
Calendar
9
:)
:)
:)
阴、阳历法
4
Vipkwd\Utils
Callback
11
:)
:)
:)
PHP callable tools
5
Vipkwd\Utils
Color
3
:)
:)
:)
Rgb/Hex颜色值处理
6
Vipkwd\Utils
Crypt
15
:)
:)
:)
#
7
Vipkwd\Utils
Dev
8
:)
:)
:)
开发调试函数
8
Vipkwd\Utils
Excel
5
:)
:)
:)
Excel表格工具
9
Vipkwd\Utils
Fenci
6
:)
:)
:)
中文分词组件
10
Vipkwd\Utils
Http
6
:)
:)
:)
http请求
11
Vipkwd\Utils
Idcard
15
:)
:)
:)
证件号码(大陆/港/澳/台)
12
Vipkwd\Utils
Ip
8
:)
:)
:)
#
13
Vipkwd\Utils
Page
3
:)
:)
:)
通用分页类
14
Vipkwd\Utils
Position
12
:)
:)
:)
经纬度操作类
15
Vipkwd\Utils
Tools
18
:)
:)
:)
常用工具集合
16
Vipkwd\Utils
Validate
32
:)
:)
:)
(regexp)验证类
yipeng@mbp vipkwd-framework % php vendor/bin/vipkwd dump color
Idx
Namespace
Class
Method
Type
Arguments
Eg
Comment
1
Vipkwd\Utils
Color
colorHexFix
static
$color
[√]
16进制色值检测/修补
2
Vipkwd\Utils
Color
hex2rgb
static
$color
[√]
16进制色值转RGB数值
3
Vipkwd\Utils
Color
rgb2hex
static
$r=255, $g=255, $b=255
[√]
RGB数值转16进制色值
yipeng@mbp vipkwd-framework % php vendor/bin/vipkwd dump -d
Idx
Dir
Namespace
Cli
1
Db
\Vipkwd\Utils\Db
php vendor/bin/vipkwd dump Db
2
Image
\Vipkwd\Utils\Image
php vendor/bin/vipkwd dump Image
3
Libs
\Vipkwd\Utils\Libs
php vendor/bin/vipkwd dump Libs
4
MediumAI
\Vipkwd\Utils\MediumAI
php vendor/bin/vipkwd dump MediumAI
5
Mq
\Vipkwd\Utils\Mq
php vendor/bin/vipkwd dump Mq
6
System
\Vipkwd\Utils\System
php vendor/bin/vipkwd dump System
7
Type
\Vipkwd\Utils\Type
php vendor/bin/vipkwd dump Type
8
Wx
\Vipkwd\Utils\Wx
php vendor/bin/vipkwd dump Wx
yipeng@mbp vipkwd-framework % php vendor/bin/vipkwd dump Db
Idx
Namespace
Class
Method
Type
Arguments
Eg
Comment
1
Vipkwd\Utils\Db
Mongo
31
:)
:)
:)
Mongo
2
Vipkwd\Utils\Db
Mysql
36
:)
:)
:)
Mysql
3
Vipkwd\Utils\Db
Redis
85
:)
:)
:)
Redis
yipeng@mbp vipkwd-framework % php vendor/bin/vipkwd dump Db.mysql
Idx
Namespace
Class
Method
Type
Arguments
Eg
Comment
1
Vipkwd\Utils\Db
Mysql
instance
static
$options
[x]
单例入口
2
Vipkwd\Utils\Db
Mysql
action
public
$callback
[x]
启动一个事务
3
Vipkwd\Utils\Db
Mysql
avg
public
[x]
获得某个列字段的平均值
4
Vipkwd\Utils\Db
Mysql
beginDebug
public
[x]
开启调试模式
5
Vipkwd\Utils\Db
Mysql
chunk
public
$limit=10, $callback, $stime=null
[x]
chunk分块操作数据
6
Vipkwd\Utils\Db
Mysql
count
public
[x]
获取数据表中的行数
7
Vipkwd\Utils\Db
Mysql
data
public
$data
[x]
设置操作目标数据
8
Vipkwd\Utils\Db
Mysql
debugLog
public
[x]
获取调试模式下SQL语句
9
Vipkwd\Utils\Db
Mysql
delete
public
[x]
删除表中条件内的数据
10
Vipkwd\Utils\Db
Mysql
field
public
$fields="*"
[x]
配置查询字段
11
Vipkwd\Utils\Db
Mysql
get
public
[x]
返回条件内的一行数据
12
Vipkwd\Utils\Db
Mysql
group
public
$group
[x]
GROUP
13
Vipkwd\Utils\Db
Mysql
has
public
[x]
检测条件内数据是否存在
14
Vipkwd\Utils\Db
Mysql
having
public
$havingArr
[x]
having
15
Vipkwd\Utils\Db
Mysql
info
public
[x]
获取数据库连接信息
16
Vipkwd\Utils\Db
Mysql
insert
public
$primaryKey=null
[x]
插入数据到表中
17
Vipkwd\Utils\Db
Mysql
insertAll
public
[x]
批量插入数据到表中
18
Vipkwd\Utils\Db
Mysql
join
public
$join=[]
[x]
配置链表关系
19
Vipkwd\Utils\Db
Mysql
last
public
[x]
获取最后一条查询语句
20
Vipkwd\Utils\Db
Mysql
lastInsertId
public
[x]
返回最后插入的行ID
21
Vipkwd\Utils\Db
Mysql
limit
public
$limit=10, $offset=0
[x]
按偏移量获取limit条数记录
22
Vipkwd\Utils\Db
Mysql
log
public
[x]
获取前序所有SQL
23
Vipkwd\Utils\Db
Mysql
max
public
[x]
获得某个列中的最大的值
24
Vipkwd\Utils\Db
Mysql
min
public
[x]
获得某个列中的最小的值
25
Vipkwd\Utils\Db
Mysql
order
public
$order
[x]
order by
26
Vipkwd\Utils\Db
Mysql
page
public
$page=1, $limit=10
[x]
按页码获取limit条数记录
27
Vipkwd\Utils\Db
Mysql
pdo
public
[x]
获取标准PDO接口
28
Vipkwd\Utils\Db
Mysql
query
public
$sql
[x]
29
Vipkwd\Utils\Db
Mysql
random
public
[x]
随机获取条件内数据
30
Vipkwd\Utils\Db
Mysql
raw
public
$expression, $map=[]
[x]
生成原始SQL表达式优化语句
31
Vipkwd\Utils\Db
Mysql
replace
public
$columns
[x]
批量替换字段的数据
32
Vipkwd\Utils\Db
Mysql
select
public
$callback=null
[x]
多条查询,支持回调遍历获取
33
Vipkwd\Utils\Db
Mysql
sum
public
[x]
某个列字段相加
34
Vipkwd\Utils\Db
Mysql
table
public
$tbName
[x]
切换/选择数据表
35
Vipkwd\Utils\Db
Mysql
update
public
$data=[]
[x]
修改表数据
36
Vipkwd\Utils\Db
Mysql
where
public
$where=[]
[x]
设置操作过滤条件
yipeng@mbp vipkwd-framework % php vendor/bin/vipkwd dump color -m rgb2hex
Idx
Namespace
Class
Method
Type
Arguments
Eg
Comment
1
Vipkwd\Utils
Color
rgb2hex
static
$r=255, $g=255, $b=255
[√]
RGB数值转16进制色值
/**
* RGB数值转16进制色值
*
* -e.g: phpunit(" Color::rgb2hex" ,[255,255,255]);
* -e.g: phpunit(" Color::rgb2hex" ,[1,10,100]);
* -e.g: phpunit(" Color::rgb2hex" ,[9,0,1]);
*
* @param integer $r
* @param integer $g
* @param integer $b
* @return string
* /
Struct: \V ipkwd\U tils\C olor::rgb2hex(
$r =255,
$g =255,
$b =255
);
yipeng@mbp vipkwd-framework % php vendor/bin/vipkwd dump color -m rgb2hex --eg
[01] \V ipkwd\U tils\C olor::rgb2hex(255, 255, 255); //< string:> “# ffffff”
[02] \V ipkwd\U tils\C olor::rgb2hex(1, 10, 100); //< string:> “# 010a64”
[03] \V ipkwd\U tils\C olor::rgb2hex(9, 0, 1); //< string:> “# 090001”
------------------------------------------------------------------------------------
yipeng@mbp vipkwd-framework % php vendor/bin/vipkwd dump ip -m getInfo --eg
[01] \V ipkwd\U tils\I p::getInfo(" 1.2.4.8" ); //array(8) {
[state] => “中国”
[region] => “-”
[province] => “北京”
[city] => “北京市”
[isp] => “CNNIC权威云解析(CDNS.CN)全球Anycast节点”
[ip] => “1.2.4.8”
[beginip] => “1.2.4.0”
[endip] => “1.2.4.255”
}
[02] \V ipkwd\U tils\I p::getInfo(" 127.0.0.1" ); //array(8) {
[state] => “-”
[region] => “-”
[province] => “-”
[city] => “内网IP”
[isp] => “内网IP”
[ip] => “127.0.0.1”
[beginip] => “127.0.0.1”
[endip] => “127.0.0.1”
}
[03] \V ipkwd\U tils\I p::getInfo(" 120.235.131.155" ); //array(8) {
[state] => “中国”
[region] => “-”
[province] => “广东省”
[city] => “惠州市”
[isp] => “移动”
[ip] => “120.235.131.155”
[beginip] => “120.235.129.0”
[endip] => “120.235.141.255”
}
[04] \V ipkwd\U tils\I p::getInfo(" 236.230.35.38/29" ); //array(8) {
[state] => “-”
[region] => “-”
[province] => “-”
[city] => “内网IP”
[isp] => “内网IP”
[ip] => “236.230.35.38”
[beginip] => “225.0.0.0”
[endip] => “239.255.255.255”
}
------------------------------------------------------------------------------------
yipeng@mbp vipkwd-framework % php vendor/bin/vipkwd dump 10.musume.com
[Notice] Undefined constant " \Vipkwd\Utils\10\Musume\Com::class" with /data/wwwroot/10musume.com/vendor\v ipkwd\u tils/src/10/Musume/Com.php
yipeng@mbp vipkwd-framework % php vendor/bin/vipkwd dump porn
[Notice] Undefined constant " \Vipkwd\Utils\Porn::class" with /data/wwwroot/10musume.com/vendor\v ipkwd\u tils/src/Porn.php
[load::assets ] 下载/更新静态资源
yipeng@mbp vipkwd-framework % php vendor/bin/vipkwd load:assets
You must use option ` -c https://domain.com` manually enter your own cdn address or specify one from the list of below
But have found the following cdn maps, please choose[index/url] one of them? [http://vipkwd.eu5.net]:
[0] http://vipkwd.eu5.net
[1] http://vipkwd.totalh.net
[2] http://dl.vipkwd.com
[3] http://vipkwd.byethost13.com
[4] quit
>
-----------------------------------------------------------------------------------------------------------------
--- CDN Ping( http://vipkwd.eu5.net ):Ok
--- CDN Maps( http://vipkwd.eu5.net/vipkwd-cdn/maps.php ): Ok
-----------------------------------------------------------------------------------------------------------------
--> [1] 55fc1266e3821b3dd3d1a533dcd9c113 ttfs/1.ttf
└-····················································································· (Download completed)
--> [2] 45d3bab54f8d612976187570fbde8e3a ttfs/2.ttf
└-····················································································· (Download completed)
--> [3] 08774b94f4feaedebb6072251124f8aa ttfs/3.ttf
└-····················································································· (Download completed)
--> [4] 629a55a7e793da068dc580d184cc0e31 ttfs/4.ttf
└-····················································································· (Download completed)
--> [5] ac3f799d5bbaf5196fab15ab8de8431c ttfs/5.ttf
└-····················································································· (Download completed)
--> [6] 1c5965c2b1dcdea439b54c3ac60cee38 ttfs/6.ttf
└-····················································································· (Download completed)
--> [7] f80465e9d8cea2b48da01f5aba236b59 ttfs/msyh.ttf
└-····················································································· (Download completed)
--> [8] 084fe7a7c7c24816842b618a3e839290 qqwry.dat
└-····················································································· (Download completed)
欢迎Star
,欢迎Fork