hktr92 / php-primitives
dev-master
2018-11-22 13:42 UTC
Requires
- php: >=7.1.2
- ext-json: *
- ext-mbstring: *
Requires (Dev)
- phpunit/phpunit: ^7.3
This package is auto-updated.
Last update: 2020-02-12 14:31:48 UTC
README
PHP Primitives 是一个受 JavaScript / Python 世界启发的实验性库。
它们只是原始数据类型的包装。
为什么你会这样做?
对我来说,这只是为了好玩。这将是我的第一个基于 TDD 的项目。
实用?这始于一个我定义了 StringUtil
类的项目,以进行基本的案例转换。该类中的所有方法都是静态的,所以我必须做类似的事情
<?php class StringUtil { static $encoding = 'UTF-8'; // ... public static function mbLoaded(): bool { return extension_loaded('mbstring'); } // ... public static function length(string $text, ?string $encoding): int { if (self::mbLoaded()) { return mb_strlen($text, $encoding ?? static::$encoding); } return strlen($text); } // ... }
而且,由于我大量使用 JavaScript,我想试验一些东西。想象一下:如果可以在 PHP 中做类似的事情呢?
// javascript "foo".split(); "bar".concat("baz");
# python "foo".split() "bar baz buzz".find("baz") "bOo".islower()
免责声明
此库不应用于生产环境。如果您确实使用它...那就看您了。
概念证明
您可以在 examples/
目录中探索功能。