php-code-generator
介绍
基于php的代码生成器
测试环境
php ^8.0
支持范围
目前仅支持laravel,后续会支持webman,thinkphp等,也欢迎提交模板
composer
composer require zx/php-code-generator
使用方法
1,代码生成器是基于渲染模板的方法,目前强调的是自定义的
2,把vender/zx/php-code-generator/src/laravel/
的三个文件复制public
目录下
3,因为每个人的代码习惯不同,所以可以根据模板适当修改,生成合适自己的代码
4,每次生成前建议删除public
的目录,然后吧生成好的代码复制到对应的项目文件下,直接生成在项目目录
容易造成代码覆盖,所以推荐自己复制进去
5,生成模板代码,在laravel容易的controller里面执行一下代码
use ZXLaravelGenerator;
use ZXMysqlOperation;
class IndexOpenController extends BaseController
{
public function test(Request $request)
{
$param = [
'type' => 'mysql',
'host' => '127.0.0.1',
'port' => '3306',
'dbname' => 'mc',
'charset' => 'utf8',
'user' => 'root',
'pwd' => 'root'
];
MysqlOperation::setConnection($param);
//根据数据库生成所有的表对应的代码模板
LaravelGenerator::generatorAllTable();
//生成admin单表的
//LaravelGenerator::generatorTable('admin');
}
}
6,文件会在public
,根据自己需要复制代码文件
7,如果你直接使用默认模板你可能需要一些辅助代码
他们会在vender/zx/php-code-generator/src/laravel/
的utils
里面
在composer.json
里面加上
"autoload": {
"files": [
"app/Utils/Function.php"
]
}
8,如果你不喜欢使用一些辅助代码,你可以把返回的代码改成
return response()->json(['code' => 200, 'msg' => '成功']);
这样标准laravel写法 ,代码检查也可以改成
$where['weixin_phone'] = !empty($request->weixin_phone) ? (string)htmlspecialchars(trim($request->weixin_phone), ENT_QUOTES, "UTF-8") : '';
自定义模板
1,继承 ZXGenerator
2,实现抽象方法,参照LaravelGenerator
的方法去实现自己的模板,通用的方法都有提供
问题反馈
QQ群:247823727
博客:https://www.cnblogs.com/zx-admin/
gitee:https://gitee.com/open-php/php-code-generator
github:https://github.com/zh7314