cyril-verloop / datatables
一个用于与PHP 8.1+一起使用DataTable的库。
4.0.0
2022-11-25 09:56 UTC
Requires
- php: >=8.1
- cyril-verloop/iterator: ^3.0
README
简单的PHP类,用于将DataTable请求和响应映射,需要PHP 8.1+。
为与PHP 8.0兼容,请参阅版本3。
安装
作为Composer依赖项
在项目目录中运行
user@host project$ composer require "cyril-verloop/datatables"
用于开发目的
user@host ~$ cd [PATH_WHERE_TO_PUT_THE_PROJECT] # E.g. ~/projects/ user@host projects$ git clone https://github.com/cyrilverloop/datatables.git user@host projects$ cd datatables user@host datatables$ composer install -o user@host datatables$ phive install --trust-gpg-keys 4AA394086372C20A,12CE0F1D262429A5,31C7E470E2138192,8AC0BAA79732DD42,C5095986493B4AA0
使用方法
您可以将DataTable请求的元素放入一个"Request"对象中。
use CyrilVerloop\Datatables\Request; $request = new Request( $columns, $order, $start, $length, $search );
然后使用"getCriterias"和"getOrderBy"方法获取数据库查询的参数。
$criterias = $request->getCriterias(); $orderBy = $request->getOrderBy();
一旦从数据库中获取了请求的记录,您可以将它们放入一个"Response"对象中,并通过"jsonSerialize"方法将对象发送回浏览器。
use CyrilVerloop\Datatables\Response; $response = new Response($draw, $data, $recordsTotal, $recordsFiltered);
持续集成
测试
要运行测试
user@host datatables$ ./tools/phpunit -c ./ci/phpunit.xml
生成的输出将在./ci/phpunit/
中。查看./ci/phpunit/html/index.html
以获取代码覆盖率,以及./ci/phpunit/testdox.html
以获取通过/失败的测试的详细列表。
要运行突变测试,您必须先运行PHPUnit,然后
user@host datatables$ ./tools/infection -c./ci/infection.json
生成的输出将在./ci/infection/
中。
静态分析
要进行静态分析
user@host datatables$ ./tools/psalm -c ./ci/psalm.xml [--report=./psalm/psalm.txt --output-format=text]
如果您希望输出到文件而不是屏幕上,请使用"--report=./psalm/psalm.txt --output-format=text"。
PHPDoc
要生成PHPDoc
user@host datatables$ ./tools/phpdocumentor --config ./ci/phpdoc.xml
生成的HTML文档将在./ci/phpdoc/
中。
标准
本项目中的所有PHP文件都遵循PSR-12。要缩进代码
user@host datatables$ ./tools/phpcbf --standard=PSR12 --extensions=php -p ./src/ ./tests/