ahamed/jsphp

一个实现JavaScript风格的Array、Object、String方法的PHP库。

v0.6 2023-08-03 08:59 UTC

This package is auto-updated.

Last update: 2024-09-03 13:39:55 UTC


README

BannerWithImageAndText

Packagist PHP Version Support GitHub GitHub Workflow Status (branch) GitHub issues GitHub closed issues GitHub pull requests GitHub closed pull requests GitHub language count GitHub top language GitHub repo size GitHub All Releases GitHub contributors GitHub last commit GitHub Release Date GitHub release (latest by date including pre-releases) GitHub tag (latest by date)

Packagist Version Packagist Downloads Packagist Stars

为什么使用这个库?

在使用php Array方法时,由于它们的不规则模式,感觉有点麻烦。

例如,你正在使用phparray_maparray_filter方法。在使用时,你可能注意到,对于array_map方法,$callback是方法的第一个参数,然后是$array,而对于array_filter方法,$array排在前面,然后是$callback。这种混合结构无处不在。

然后我发现,JavaScript在这些情况下使用了一种很好的模式,而我也是JavaScript的忠实粉丝。这就是我决定构建这个库的原因。我可以这么说,喜欢JavaScript的人可以通过使用这个库来获得JavaScript的纯粹感受,而不喜欢JavaScript的人也可以获得良好结构化的数组操作的优势。

未来之旅

目前我只覆盖了array方法。在不久的将来,我将添加objectstring方法。

安装

需要composer来安装此包。如果您已安装composer,请运行以下命令。

composer require ahamed/jsphp

使用

安装成功后,将库包含到您的项目中。

require_once __DIR__ . '/vendor/autoload.php';

use Ahamed\JsPhp\JsArray;

$data = [1, 2, 3, 4, 5];
$array = new JsArray($data);

$square = $array->map(
    function ($item) {
        return $item * $item;
    }
);

print_r($square);

文档

在编写此文档时,我大量参考了MDN。感谢MDN,这个网站帮助我学到了很多JS。

请参考wiki页面以获取详细文档。

测试

您可以运行PHPUnit测试和PHP_CodeSniffer

  • 运行单元测试
    composer run-script test
  • 运行 phpcs 测试
    composer run-script phpcs