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)。请参阅许可文件获取更多信息。