uzbek / laravel-attribute-scanner
Laravel项目PHP8属性扫描器
0.1.7
2023-04-02 10:11 UTC
Requires
- php: ^8.1
- illuminate/contracts: ^9.0|^10.0
- spatie/laravel-package-tools: ^1.13.0
Requires (Dev)
- laravel/pint: ^1.0|^2.0
- nunomaduro/collision: ^6.0
- nunomaduro/larastan: ^2.0.1
- orchestra/testbench: ^7.0
- pestphp/pest: ^1.21
- pestphp/pest-plugin-laravel: ^1.1
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- phpunit/phpunit: ^9.5
- dev-main
- 0.1.7
- 0.1.6
- 0.1.5
- 0.1.4
- 0.1.3
- 0.1.2
- 0.1.1
- 0.1.0
- 0.0.1
- dev-dependabot/github_actions/stefanzweifel/git-auto-commit-action-5
- dev-dependabot/github_actions/actions/checkout-4
- dev-dependabot/github_actions/aglipanci/laravel-pint-action-2.3.0
- dev-dependabot/github_actions/ramsey/composer-install-2
This package is auto-updated.
Last update: 2024-09-09 07:58:29 UTC
README
Laravel项目PHP8属性扫描器
安装
您可以通过composer安装此包
composer require uzbek/laravel-attribute-scanner
使用方法
use Uzbek\LaravelAttributeScanner\Facades\AttributeScanner; $attributes = AttributeScanner::getAttributes(asArray: true); // or use Uzbek\LaravelAttributeScanner\LaravelAttributeScanner; $scanner = new LaravelAttributeScanner(directories: ['app/Models', 'app/Http/Controllers']); $attributes = $scanner->getAttributes();
结果示例
asArray = false (默认)
[ "App\Http\Controllers\UserController@create" => [{...},{...}], #Uzbek\LaravelAttributeScanner\Attribute[], (method) "App\Http\Controllers\UserController@update>id" => [{...}], #Uzbek\LaravelAttributeScanner\Attribute[], (parameter) "App\Http\Controllers\UserController.service" => [{...}], #Uzbek\LaravelAttributeScanner\Attribute[], (property) ]
asArray = true
[ "App\Http\Controllers\UserController@create" => [ [ "class" => "App\Http\Controllers\UserController", "method" => "create", "target" => "method", "name" => "Uzbek\LaravelValidationAttributes\Attributes\Validators", "arguments" => [ [ "name" => "required|string", "email" => "required|email", ... ], ], ] ], "App\Http\Controllers\UserController@update>id" => [ [ "class" => "App\Http\Controllers\UserController", "method" => "update", "target" => "parameter", "parameter" => "id", "name" => "Uzbek\SomeAttributes\ID", "arguments" => [], ] ], "App\Http\Controllers\UserController.service" => [ [ "class" => "App\Http\Controllers\UserController", "target" => "property", "property" => "service", "name" => "Uzbek\SomeAttributes\Readonly", "arguments" => [], ] ], "App\Http\Controllers\UserController:IS_PUBLIC" => [ [ "class" => "App\Http\Controllers\UserController", "target" => "constant", "constant" => "IS_PUBLIC", "name" => "Uzbek\SomeAttributes\Casts\Integer", "arguments" => [], ] ], ... ]
测试
composer test
变更日志
请参阅CHANGELOG获取最近更改的更多信息。
贡献
请参阅CONTRIBUTING获取详细信息。
安全漏洞
请参阅我们的安全策略了解如何报告安全漏洞。
鸣谢
许可协议
MIT许可协议 (MIT)。请参阅许可文件获取更多信息。