germania-kg / permissions
2.1.5
2022-03-30 10:14 UTC
Requires
- php: ^5.6|^7.0
- psr/container: ^1.0
- psr/log: ^1.0
Requires (Dev)
- monolog/monolog: ^1.16
- php-coveralls/php-coveralls: ^2.0
- phpunit/dbunit: ^2.0|^3.0
- phpunit/phpunit: ^5.7|^6.0
README
安装
$ composer require germania-kg/permissions
MySQL 用户 可以使用 sql/
目录中的 install.sql.txt
安装 permissions 和 permissions_roles 表。
用法
<?php use Germania\Permissions\PermissionsAcl; // Have your PDO and optional a PSR-3 Logger at hand $pdo = new PDO; $logger = new Monolog; // Pass PDO and table names, // optionally with PSR-3 Logger $perms = new PermissionsAcl( $pdo, "permissions", "permissions_roles" ); $perms = new PermissionsAcl( $pdo, "permissions", "permissions_roles", $logger ); // Use Callable $acl = $perms();
print_r( $acl ); // Keys are permissions; // Element arrays are roles ( [bar] => Array ( [0] => 1 ) [foo] => Array ( [0] => 1 [1] => 2 ) [quc] => Array ( ) )
开发
$ git clone https://github.com/GermaniaKG/Permissions.git
$ cd Permissions
$ composer install
按照 sql/install.sql.txt
设置 MySQL 表 permissions 和 permissions_roles。
单元测试
可以复制 phpunit.xml.dist
到 phpunit.xml
并根据需要调整,或者保持原样。运行 PhpUnit 测试或 composer 脚本,如下所示
$ composer test # or $ vendor/bin/phpunit
在 phpunit.xml
中,编辑数据库凭证
<php> <var name="DB_DSN" value="mysql:host=localhost;dbname=test;charset=utf8" /> <var name="DB_USER" value="root" /> <var name="DB_PASSWD" value="" /> <var name="DB_DBNAME" value="test" /> <var name="DB_SETUP" value="sql/install.sql.txt" /> </php>
转到项目根目录并运行 phpunit
。