<!--
author:chen
date: 2021年01月06日
-->
<?php defined('BASEPATH') or exit('No direct script access allowed');
class Generate extends SW_Controller
{
//配置要生成的表
public $table = 'sw_member';
public function __construct()
{
parent::__construct();
$this->load->database();
}
public function GetField()
{
$sql = "SHOW FULL COLUMNS FROM $this->table";
return $this->db->query($sql)->result_array();
}
//获取对应表的字段名,生成Add方法
public function Add()
{
$fieldArr = $this->GetField();
echo 'public function Add($data)';
echo '{';
echo '</br>';
echo '$sql = "INSERT INTO $this->table ';
echo '(';
$i = 0;
foreach ($fieldArr as $val) {
$i++;
if ($i != 1) {
echo "`" . $val['Field'] . "`";
if ($i != count($fieldArr)) {
echo ',';
}
}
}
echo ')';
echo '</br>';
echo 'VALUES';
echo '</br>';
echo '(';
$i = 0;
foreach ($fieldArr as $val) {
$i++;
if ($i != 1) {
echo ":" . $val['Field'];
if ($i != count($fieldArr)) {
echo ',';
}
}
}
echo ')";';
echo '</br>';
echo '$sql_array = array(';
echo '</br>';
$i = 0;
foreach ($fieldArr as $val) {
$i++;
if ($i != 1) {
echo "':" . $val['Field'] . "'=> \$data['" . $val['Field'] . "']";
if ($i != count($fieldArr)) {
echo ',';
}
echo '</br>';
}
}
echo ');';
echo '</br>';
echo '$sqlAction = $this->db->conn_id->prepare($sql);';
echo '</br>';
echo '$result = $sqlAction->execute($sql_array);';
echo '</br>';
echo 'if (!$result) return 0;';
echo '</br>';
echo 'return $this->db->conn_id->lastInsertId();';
echo '</br>';
echo '}';
}
//获取对应表的字段名,生成Update方法
public function Update()
{
$fieldArr = $this->GetField();
echo 'public function Update($data)';
echo '{';
echo '</br>';
echo '$sql_array = array();';
echo '</br>';
echo '$sql = "UPDATE $this->table SET ';
echo '</br>';
$i = 0;
foreach ($fieldArr as $val) {
$i++;
if ($i != 1) {
echo $val['Field'] . "=:" . $val['Field'];
if ($i != count($fieldArr)) {
echo ',';
}
}
}
echo '</br>';
echo ' WHERE ';
echo $fieldArr[0]['Field'] . '=:' . $fieldArr[0]['Field'] . '";';
echo '</br>';
echo '$sql_array = array(';
echo '</br>';
$i = 0;
foreach ($fieldArr as $val) {
$i++;
if ($i != 1) {
echo "':" . $val['Field'] . "'=> \$data['" . $val['Field'] . "']";
echo ',';
echo '</br>';
}
}
echo "':" . $fieldArr[0]['Field'] . "'=> \$data['" . $fieldArr[0]['Field'] . "']";
echo '</br>';
echo ');';
echo '</br>';
echo '$sqlAction = $this->db->conn_id->prepare($sql);';
echo '</br>';
echo 'return $sqlAction->execute($sql_array);';
echo '</br>';
echo '}';
}
}
PHP CI框架底层MODEL生成器
最新推荐文章于 2021-03-16 13:07:57 发布