efureev / uphp
此包已被 弃用 且不再维护。未建议替代包。
u.php 有用的函数集合与代码片段
2.0.2
2018-02-22 08:00 UTC
Requires
- php: >=5.6
Requires (Dev)
- codeclimate/php-test-reporter: dev-master
- phpunit/phpunit: *
This package is auto-updated.
Last update: 2024-04-29 04:12:32 UTC
README
utilites4php
运行测试示例
运行所有测试: phpunit
运行测试单元: phpunit tests/BaseTest
将覆盖率数据发送到 Code Climate
CODECLIMATE_REPO_TOKEN= {token} ./vendor/bin/test-reporter
函数
uFile
- getExt 返回文件扩展名
getExt($filename)
uFile::getExt('/var/log/error.log'); uFile::size('/var/log/error.log'); uFile::size('/var/log/error.log', false); uFile::sizeFormat(323423);
uList
- rangeList 返回整数范围列表
rangeList($from, $to, $step = 1)
uList::rangeList(1,4); // 1,2,3,4 uList::rangeList(1,50, 10); // 10,20,30,40,50 uList::rangeList(10, 7); // 10,9,8,7
uTime
- timeList 返回时间列表
timeList($minutes = 30)
uTime::timeList(); uTime::timeList(60);
uColor
- hex2RGB HEX转RGB
hex2RGB($hexStr, $returnAsString = false, $separator = ',')
uColor::hex2RGB('00FF00', 1) // '0,255,0' uColor::hex2RGB('000', 1) // '0,0,0' uColor::hex2RGB('000', 1,'|') // '0|0|0' uColor::hex2RGB('000') // ['red' => 0,'green' => 0,'blue' => 0]
uArray
-
isAssociative 关联数组或非
uArray::isAssociative($array, $allStrings = true)
-
isIndexed 索引数组或非
uArray::isAssociative($array, $allStrings = true)
-
clean 从数组中移除空值:FALSE, 0, '0', '', null
uArray::clean(array $array)
-
removeValue 根据值从数组中移除
uArray::removeValue(array $array, $arg, $arg2, ..n)
-
exists 检查给定的键是否存在于数组中,通过字符串表示
uArray::exists($key, $array)
$data = [ 'k0' => 'v0', 'k1' => [ 'k1-1' => 'v1-1' ], 'complex_[name]_!@#$&%*^' => 'complex', 'k2' => 'string' ]; Arrays::exists('k0', $data); // returns: true Arrays::exists('k9', $data); // returns: false Arrays::exists('[k1][k1-1]', $data); // returns: true Arrays::exists('[k1][k1-2]', $data); // returns: false Arrays::exists('["complex_[name]_!@#$&%*^"]', $data); // returns: true Arrays::exists('[k2][2]', $data); // returns: false
- save 通过字符串表示将元素保存到数组中
uArray::save($key, &$array, $value, $replace = true)
$data = [ 'k2' => 'string' ]; Arrays::save('k0', $data, 'v0'); // returns: true, save as 'k0' => 'v0' Arrays::save('[k1][k1-1]', $data, 'v1-1'); // returns: true, save as 'k1' => ['k1-1' => 'v1-1'] Arrays::save('[k2][2]', $data, 'p'); // returns: false, can't save value to string // Broken key names Arrays::save('k3[', $data, 'v3'); // returns: false, can't save, bad syntax Arrays::save('["k4["]', $data, 'v4'); // returns: true, save as 'k4[' => 'v4' Arrays::save('"k4["', $data, 'v4'); // returns: false, can't save, bad syntax // Append Arrays::save('k5', $data, []); // returns: true, create array 'k5' => [] Arrays::save('k5[]', $data, 'v5-0'); // returns: true, append value to exists array 'k5' => [ 'v5-0' ] Arrays::save('k6[k6-1][]', $data, 'v6-1-0'); // returns: true, save as 'k6' => [ 'k6-1' => [ 'v6-1-0' ] ] // Replace if not exists Arrays::save('k2', $data, 'something', false); // returns false, value not replaced because value is exists
- delete 通过字符串表示从数组中删除元素
uArray::delete($key, &$array)
$data = [ 'k0' => 'v0', 'k1' => [ 'k1-1' => 'v1-1' ], 'complex_[name]_!@#$&%*^' => 'complex' ]; Arrays::delete('k0', $data); // returns: true, delete element from array Arrays::delete('k9', $data); // returns: false Arrays::delete('[k1][k1-1]', $data); // returns: true, delete element from array Arrays::delete('[k1][k1-2]', $data); // returns: false Arrays::delete('["complex_[name]_!@#$&%*^"]', $data); // returns: true, delete element from array
- get 通过字符串表示从数组中获取元素
uArray::get($key, $array, $default = null, $ignoreString = true)
$data = [ 'k0' => 'v0', 'k1' => [ 'k1-1' => 'v1-1' ], 'complex_[name]_!@#$&%*^' => 'complex', 'k2' => 'string' ]; Arrays::get('k0', $data); // returns: 'v0' Arrays::get('k9', $data, '0'); // returns: '0', key isn't exists in array Arrays::get('[k1][k1-1]', $data); // returns: 'v1-1' Arrays::get('[k1][k1-2]', $data, 'default'); // returns: 'default', key isn't exists in array Arrays::get('["complex_[name]_!@#$&%*^"]', $data); // returns: 'complex' Arrays::get('[k2][2]', $data); // returns: null, key isn't exists in array // If you want get a symbol from string value, you may switch off option $ignoreString = false Arrays::get('[k2][2]', $data, null, false); // returns: 'r' Arrays::get('[k2][null]', $data, null, false); // returns: null, offset isn't exists in string