free2one/laravel-php-accessor

Laravel框架的PHP访问器SDK

0.4.0 2023-10-27 06:41 UTC

This package is auto-updated.

Last update: 2024-09-27 08:35:37 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

注意事项

跳转或查找不生效

需要确保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