free2one/laravel-php-accessor

PHP Accessor SDK for Laravel framework

0.4.0 2023-10-27 06:41 UTC

This package is auto-updated.

Last update: 2024-10-27 08:46:38 UTC


README

安装

composer require free2one/laravel-php-accessor

发布配置

php artisan vendor:publish --tag=php-accessor

项目composer.json 文件中配置以下信息信息

{
  "scripts":{
    "php-accessor": "@php vendor/bin/php-accessor generate"
  }
}

通过#[Data]注解原始类

<?php
namespace App;

use PhpAccessor\Attribute\Data;

#[Data]
class Entity
{
    private int $id;

    private int $sex;
}

更多注解的使用说明,详见PHP Accessor.

配置项说明

is_dev_mode

设置为true时,将在每次请求时重新生成访问器代理类,否则将在第一次请求时生成访问器代理类,后续请求将直接使用代理类.

scan_directories

需要扫描的目录,默认为app目录.

proxy_root_directory

访问器代理类存放目录,默认为.php-accessor目录.

gen_meta

是否生成访问器元数据,生产环境可设置为no.

gen_proxy

是否生成访问器代理类

log_level

日志级别,默认为debug.

注意事项

跳转 or 查找不生效

需要确保APP_ENV在本地环境的设置为local,否则请自行修改配置文件php-accessor.php中的genMeta判断.

<?php
declare(strict_types=1);

use Psr\Log\LogLevel;

return [
    'is_dev_mode' => false,
    'scan_directories' => [
        'app',
    ],
    'proxy_root_directory' => '.php-accessor',
    'gen_meta' => env('APP_ENV') == 'local' ? 'yes' : 'no',
    'gen_proxy' => 'yes',
    'log_level' => LogLevel::DEBUG,
];

相关资源

PHP Accessor: 访问器生成器

PHP Accessor IDEA Plugin: Phpstorm插件,文件保存时自动生成访问器.支持访问器的跳转,代码提示,查找及类字段重构等.

Hyperf PHP Accessor: Hyperf框架SDK

Laravel PHP Accessor: Laravel框架SDK