tp5快速建表,设计思路比较简单。 1,先新建一个主表 2,查询当前逻辑下的目标子表是否存在 3,copy主表,创建子表 一,在memberController创建方法判断目标子表是否存在 先判断当前"member_data" . $post_data["data_table_sufix"])表是否存在,不存在执行创建 $model = new memberModel(); if (!$model->tableExists("member_data" . $post_data["data_table_sufix"])) { $model->copyTable("member_data" . $post_data["data_table_sufix"], "member_data"); }
二,判断子表是否存在以及copy主表的方法
memberModel
查询表是否存在
public static function tableExists($table_name) { $res = Db::query("show tables like '{$table_name}'"); if (count($res) == 0) { return false; } else { return true; } }
执行表的创建
public static function copyTable($new_table_name, $old_table_name = "member_data") { try { $res = DB::execute("create table {$new_table_name} like {$old_table_name}"); return true; } catch (\Exception $e) { return false; } }