creativestyle / utilities
具有高复用性的静态方法实用工具集合
Requires
- php: >=7.1
- paragonie/random-lib: ^2.0
- symfony/options-resolver: ^2 | ^3 | ^4
Requires (Dev)
- phpunit/phpunit: ^7
README
常用的PHP实用工具库
字符串、数组和数字的实用方法的集合。大多数项目中必不可少。
安装
composer require creativestyle/utilities
数组助手
pickColumn(array $table, $column)
假设你有一个关联数组数组($table
),此方法将返回一个单维数组,其中包含所选键($column
)的值。
pick(array $keys, array $subject)
从$subject
关联数组中选择所选的$keys
。
map(array $arr, $callback)
将数组映射,允许你更改键。
回调函数使用($key
,$value
)参数调用,并应返回一个[$newkey => $newvalue]
数组。
通过从$callback
返回多个项目,可以将单个条目映射到多个。
average(array $arr, $key = null)
计算数组值。如果设置了键,则平均该键指示的列。
RandHelpers
seed()
返回一个长数字字符串。
randBool($trueChance)
返回一个随机布尔值,$trueChance
[0, 1] 的概率返回 true
。
arrayRand(array $array)
返回一个随机数组元素。
sample(array $array, $count = 1)
从$array
返回$count
个唯一的随机元素。
如果所需的输出数量等于或大于数组大小,则对数组进行洗牌。如果它小于或等于0,则返回空数组。
gaussianRand($mu, $sigma)
返回具有所需参数的高斯分布的随机数。
normalProbabilityDensity($x, $mu, $sigma)
返回具有所需参数的正态分布的随机数。
字符串助手
urlize($text)
将文本转义,仅保留字母数字字符和 -
。空白被折叠并转换为 -
。
slugify($text)
与 urlize()
等价。
joinNotEmpty(array $elements, $delimiter = ', ')
与 implode
的行为相同,但跳过空数组元素。
endsWith($haystack, $needle)
检查$haystack
是否以$needle
结尾。
startsWith($haystack, $needle)
检查$haystack
是否以$needle
开头。
convertToTitleCase($string)
将字符串转换为标题格式。
capitalize($string)
以多字节安全的方式将字符串(与 ucfirst
相同)转换为大写。
humanize($text)
将驼峰式变量名称转换为人类可读形式。例如 virtualRealityInterposer
将成为 Virtual reality interposer
。
humanizeConst($constName)
类似于 humanize
,但将常量名称如 VIRTUAL_REALITY_INTERPOSER
转换。
isCoercibleToString($value)
如果值可以转换为字符串(是标量或具有 __toString
方法),则返回 true。