tadaspaplauskas / anyway
自动切换函数参数和重试的顺序,以防TypeError。
1.0.0
2022-07-24 17:11 UTC
Requires
- php: ^8.0
Requires (Dev)
- phpunit/phpunit: ^9.5
README
你使用PHP多年了,但还是记不清像in_array、array_map或implode这样的函数的参数顺序?别担心,你的困扰终于结束了!
安装
composer require tadaspaplauskas/anyway
入门指南
快点!在in_array函数中第一个参数是什么:数组还是值?
in_array([1, 2, 3], 2); // TypeError // in_array(): Argument #2 ($haystack) must be of type array, int given
你猜错了:)
好在Anyway总知道你的意图
use Anyway; Anyway::in_array([1, 2, 3], 2); // true Anyway::in_array(4, [1, 2, 3]); // false
Anyway可以与全局空间中的任何函数一起工作。当然,如果参数的顺序没有意义,Anyway还会告诉你
use Anyway; Anyway::in_array([1, 2, 3], fn () => 'what?'); // ErrorException // Object of class Closure could not be converted to int
限制
该包适用于期望不同类型参数的函数。例如,它无法与explode或strpos一起工作,因为这两个期望的参数都是字符串。
许可证
此包根据MIT许可证发布。有关详细信息,请参阅LICENSE。
免责声明
我知道这很傻:)。这个包是由一条推文启发而来的,请带着盐粒来吃。虽然它相当无害,并且可以在生产中使用,但你可能会从队友那里得到一些奇怪的目光。最好把这个包当作一种包装形式的玩笑。