网站建设产品学历提升中心
web/
2025/9/27 12:26:45/
文章来源:
网站建设产品,学历提升中心,卧龙区网站建设页面,wordpress页面和自定义链接ThinkPHP为了节省一些重复的步骤#xff0c;写了个简单版的生成model的工具#xff0c;逆向生成model代码#xff0c;节省时间#xff0c;专注写业务代码。 ThinkPHP中的命令行也提供了一些生成代码的命令#xff1a;
make:controller 创建控制器
make:model 创建模型
m…ThinkPHP为了节省一些重复的步骤写了个简单版的生成model的工具逆向生成model代码节省时间专注写业务代码。 ThinkPHP中的命令行也提供了一些生成代码的命令
make:controller 创建控制器
make:model 创建模型
make:middleware 创建中间件ThinkPHP也提供了逆向生成model的命令optimize:autoload但是提示Command “optimize:autoload” is not defined. 于是就算了也不想去研究它。还不如直接写一个。
下面是一个简单的逆向工程工具实现代码
?phpnamespace app\controller;use app\BaseController;
use think\Request;
use think\Facade\Db;class GeneratorController extends BaseController
{static $schema shushan;public function generator(){//获取表名$tables Db::query(SELECT TABLE_NAME as namefrom information_schema.tables WHERE TABLE_SCHEMA :dataBase, [dataBase GeneratorController::$schema]);foreach ($tables as $key $value) {foreach ($value as $item) {//获取字段名称和备注$COLUMNS Db::query(select COLUMN_NAME,DATA_TYPE,COLUMN_COMMENT from information_schema.COLUMNS where table_name :itemand table_schema :dataBase, [item $item, dataBase GeneratorController::$schema]);$file fopen(tempFile/ . GeneratorController::snakeToCamel($item) . .php, w);fwrite($file, ?php . PHP_EOL . namespace app\model; . PHP_EOL. PHP_EOL . use think\model; . PHP_EOL. PHP_EOL . class . GeneratorController::snakeToCamel($item) . extends Model. PHP_EOL . { . PHP_EOL);$content //设置字段信息 . PHP_EOL .protected $ . schema [ . PHP_EOL;fwrite($file, $content);//写入字段foreach ($COLUMNS as $COLUMN) {$content . $COLUMN[COLUMN_NAME] . . . . $COLUMN[DATA_TYPE] . . , . // . $COLUMN[COLUMN_COMMENT] . PHP_EOL;fwrite($file, $content);}$content PHP_EOL . ];;fwrite($file, $content);fwrite($file, PHP_EOL . });fclose($file);}}return $this-success();}static function snakeToCamel($str, $capitalized true){$result str_replace(_, , ucwords($str, _));if (!$capitalized) {$result lcfirst($result);}return $result;}
}
生成的效果
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/82766.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!