jesseschalken / hack-utils
v0.1
2016-09-20 13:35 UTC
This package is not auto-updated.
Last update: 2024-09-14 18:53:19 UTC
README
为Hack语言使用PHP函数的安全包装库,目标如下
- 完全且准确地静态类型化
- 通过
h2tp <src> <dst> --no-collections
与PHP >= 5.3无缝交互 - 优先使用PHP数组而非Hack集合,使得库更容易从PHP中使用
- 尽可能提供比标准PHP API更简单或更有用的语义
- 错误情况下抛出异常,而不是返回
false
或要求调用者检查_last_error()
函数 - 使用一致的参数顺序,将主题(如果函数是方法,则为
$this
)作为第一个参数
- 错误情况下抛出异常,而不是返回
- 覆盖常见Hack/PHP程序所需的核心功能集
库函数像其他Composer包一样工作,无需安装hhvm
或h2tp
即可使用。修改此库时,请使用./build.bash
重新构建PHP代码。
提供以下功能
- 字符串(查找、重复、替换、切片、拼接、分块、修剪、填充、反转、分割、连接、is_alnum、...,十六进制转换,编码/解码UTF8、...)
- 数组,包括关联数组和顺序索引数组(连接、推入、弹出、移动、添加到开头、范围、过滤、映射、归约、连接映射、分组、组合、反转、转置、并集、交集、差集、选择、连接、解包、反转、洗牌、分块、重复、切片、拼接、查找、排序、...)
- 整数/浮点数(最大值、最小值、绝对值、向上取整、向下取整、截断、小数部分、四舍五入、符号位、指数、幂、对数、求和、乘积、正弦、余弦、正切、双曲正弦、...)
- 日期/时间(解析、格式化、获取部分、从部分创建、...)
- JSON(编码、解码)
- PCRE正则表达式(匹配、匹配所有、分割、替换、引号)
在hack/
目录中浏览源代码。
函数具有简单的口头名称。当需要为不同类型(顺序数组、关联数组、字符串)使用相同动词的不同用法时,不常见版本以_string
、_array
或_assoc
等相应后缀修饰。例如,chunk
(用于数组),chunk_string
、chunk_assoc
。
以_
开头的前缀是私有的,不应从库外部引用。
待办事项
- 文件系统(fopen、scandir、unlink、...)
- 命令执行(proc_open、...)