PHP FOR MYSQL 代碼生成助手(根據(jù)Mysql里的字段自動(dòng)生成類(lèi)文件的)
根據(jù) Mysql 里的字段 自動(dòng)生成 類(lèi)文件:
但需要導(dǎo)入:
require_once ./db/ez_sql_core.php;
require_once ./db/ez_sql_mysql.php;
幫助文檔:http://jvmultimedia.com/docs/ezsql/ez_sql_help.htm
上圖 :
核心代碼:
<?php
class db{
/**********************************************************************
* Author: fangjun (fangjunai@163.com)
* Name..: PHP_For_MySQL_Helper v1.0
* Desc..: 自動(dòng)生成數(shù)據(jù)庫(kù)操作類(lèi)
* Date..: 2011-7-22
/**********************************************************************/
private $db_server = 'localhost';
private $db_username = 'root';
private $db_password = '';
private $primary_key = null;
//初始化
public function __construct(){
$this->db_conn = mysql_connect($this->db_server,$this->db_username,$this->db_password) or die('Error:'.mysql_error());
}
//返回所以的數(shù)據(jù)庫(kù)名稱(chēng)
public function db_list(){
$databasename = array();
$i=0;
$list = mysql_list_dbs($this->db_conn);
while ($row = mysql_fetch_object($list)) {
$databasename[$i] = $row->Database;
$i++;
}
mysql_close();
return $databasename;
}
//返回所以的數(shù)據(jù)庫(kù)名稱(chēng)
public function table_list($databasename){
$tablename = array();
$i=0;
$result = @mysql_list_tables($databasename);
while($row = mysql_fetch_array($result,MYSQL_NUM)){
$tablename[$i] = $row[0];
$i++;
}
mysql_free_result($result);
mysql_close();
return $tablename;
}
//返回表里的字段
public function field_list($databasename,$tablename){
$fieldname = array();
$v = 0;
mysql_select_db($databasename,$this->db_conn);
$rel = mysql_query("select * from ".$tablename);
for($i=0;$i<mysql_num_fields($rel);$i++){
$meta = mysql_fetch_field($rel);
if($meta){
if($meta->primary_key==1){
$this->primary_key = $meta->name;
}else{
$fieldname[$v] = $meta->name;
$v++;
}
}
}
mysql_close();
return $fieldname;
}
public function showclass($databasename,$tablename){
$field = $this->field_list($databasename,$tablename);
$this->primary_key;
$key = null;
$val = null;
$sql = null;
$tmp = null;
$html = '////////////////////////////////////<br/>';
$html = $html.'//使用方法<br/>';
$html = $html.'// 導(dǎo)入<br/>';
$html = $html.'// ez_sql:http://jvmultimedia.com/docs/ezsql/ez_sql_help.htm';
$html = $html.'// require_once \'./db/ez_sql_core.php;<br/>';
$html = $html.'// require_once \'./db/ez_sql_mysql.php;<br/>';
$html = $html.'// $db = new ezSQL_mysql($cfg_db_user,$cfg_db_pass,$cfg_db_name,$cfg_db_host);<br/>';
$html = $html.'// $db->query(\'set names utf8\');<br/>';
$html = $html.'// 調(diào)用<br/>';
$html = $html.'// $forum = new Forum($db);<br/>';
$html = $html.'// $forum->save($Posts);<br/>';
$html = $html.'////////////////////////////////////<br/><br/><br/>';
$html = $html.'// 作者:<br/>';
$html = $html.'// 備注:<br/>';
$html = $html.'// 創(chuàng)建時(shí)間:'.date('Y-m-d H:i:s').'<br/>';
$html = $html.'<PRE> class '.$tablename.'{<br/>';
$html = $html.'<br/>';
$html = $html.' private $db';
$html = $html.'<br/>';
$html = $html.'<br/>';
$html = $html.' //實(shí)例化 <br/>';
$html = $html.' public function '.$tablename.'($db){<br/>';
$html = $html.' $this->db = $db;<br/>';
$html = $html.' }<br/>';
$html = $html.'<br/>';
$html = $html.' //保存記錄<br/>';
$html = $html.' public function save($arry){<br/>';
for($i=0;$i<count($field);$i++){
$key = $key.$field[$i].',';
$val = $val.'\'{$arry['.$field[$i].']}\',';
}
$sql = "\"insert into ".$tablename." (".rtrim($key,",").")values(".rtrim($val,",").")\"";
$html = $html.' $sql='.$sql.';<br/>';
$html = $html.' return $this->db->query($sql);<br/>';
$html = $html.' }<br/>';
$html = $html.'<br/>';
$html = $html.' //根據(jù)主鍵更新記錄 <br/>';
$html = $html.' public function update($arry){<br/>';
for($i=0;$i<count($field);$i++){
$tmp = $tmp.$field[$i].'=\'{$arry['.$field[$i].']}\',';
}
$sql = "\"update ".$tablename." set ".rtrim($tmp,",")." where ".$this->primary_key.'=".$arry['.$this->primary_key.']';
$html = $html.' $sql='.$sql.';<br/>';
$html = $html.' return $this->db->query($sql);<br/>';
$html = $html.' }<br/>';
//PostID='{$Posts['PostID']}'";
$html = $html.'<br/>';
$html = $html.' //根據(jù)主鍵刪除記錄 <br/>';
$html = $html.' public function delete($'.$this->primary_key.'){<br/>';
$sql = "\"delete from ".$tablename." where ".$this->primary_key."=\".$".$this->primary_key;
$html = $html.' $sql='.$sql.';<br/>';
$html = $html.' return $this->db->query($sql);<br/>';
$html = $html.' }<br/>';
$html = $html.'<br/>';
$html = $html.' //根據(jù)主鍵查詢(xún)一條記錄 <br/>';
$html = $html.' public function getQueryById($'.$this->primary_key.'){<br/>';
$sql = "\"select * from ".$tablename." where ".$this->primary_key."=\".$".$this->primary_key;
$html = $html.' $sql='.$sql.';<br/>';
$html = $html.' return $this->db->get_row($sql);<br/>';
$html = $html.' }<br/>';
$html = $html.'<br/>';
$html = $html.' //查詢(xún)?nèi)坑涗?<br/>';
$html = $html.' public function getQuery(){<br/>';
$sql = "\"select * from ".$tablename."\"";
$html = $html.' $sql='.$sql.';<br/>';
$html = $html.' return $this->db->get_results($sql);<br/>';
$html = $html.' }<br/>';
$html = $html.'<br/>';
$html = $html.'<br/>';
$html = $html.'}</PRE>';
echo $html;
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title> PHP For MySQL Helper v1.0 </title>
<style>
body{ font-size:14px;}
h3{ padding:0px; margin:0px; background-color:#333; color:#FFF;font-size:14px; }
.dblist,.tablelist,.show{width:100%;padding:10px 0;}
a:link {}
a:hover {color:#F00}
</style>
</head>
<body>
<?php
ini_set('default_charset', 'utf-8');
echo '<div class=\'dblist\'>';
echo '<h3>請(qǐng)選擇數(shù)據(jù)庫(kù)</h3>';
//-----------------------------------
$DB = new db();
$dblist = $DB->db_list();
for ($row=0;$row<count($dblist);$row++){
echo '<a href="?databasename='.$dblist[$row].'">'.$dblist[$row].'</a><br/>';
}
//-----------------------------------
echo '</div>';
echo '<div class=\'tablelist\'>';
echo '<h3>請(qǐng)選擇表</h3>';
//-----------------------------------
if(isset($_GET['databasename'])){
$databasename = $_GET['databasename'];
$DB = new db();
$tablelist = $DB->table_list($databasename);
for ($i=0;$i<count($tablelist);$i++){
echo '<a href="db.php?databasename='.$databasename.'&tablename='.$tablelist[$i].'">'.$tablelist[$i].'</a><br/>';
}
}
//-----------------------------------
echo '</div>';
echo '<div class=\'show\'>';
echo '<h3>自動(dòng)生成數(shù)據(jù)類(lèi)</h3>';
//-----------------------------------
if(isset($_GET['databasename'])&& isset($_GET['tablename'])){
$databasename = $_GET['databasename'];
$tablename = $_GET['tablename'];
$DB = new db();
$DB->showclass($databasename,$tablename);
}
//-----------------------------------
echo '</div>';
?>
</body>
</html>
代碼打包下載
- PHP之Mysql常用SQL語(yǔ)句示例的深入分析
- PHP執(zhí)行批量mysql語(yǔ)句的解決方法
- 工作中常用的mysql語(yǔ)句分享 不用php也可以實(shí)現(xiàn)的效果
- php與mysql建立連接并執(zhí)行SQL語(yǔ)句的代碼
- php中轉(zhuǎn)義mysql語(yǔ)句的實(shí)現(xiàn)代碼
- php將mysql數(shù)據(jù)庫(kù)整庫(kù)導(dǎo)出生成sql文件的具體實(shí)現(xiàn)
- php 備份數(shù)據(jù)庫(kù)代碼(生成word,excel,json,xml,sql)
- PHP備份數(shù)據(jù)庫(kù)生成SQL文件并下載的函數(shù)代碼
- php中比較簡(jiǎn)單的導(dǎo)入phpmyadmin生成的sql文件的方法
- php SQL之where語(yǔ)句生成器
- PHP+Mysql實(shí)現(xiàn)多關(guān)鍵字與多字段生成SQL語(yǔ)句的函數(shù)
相關(guān)文章
基于php實(shí)現(xiàn)的php代碼加密解密類(lèi)完整實(shí)例
這篇文章主要介紹了基于php實(shí)現(xiàn)的php代碼加密解密類(lèi),結(jié)合完整實(shí)例形式分析了php針對(duì)php代碼進(jìn)行加密與解密的完整流程,以及加密解密類(lèi)的使用方法,需要的朋友可以參考下2016-10-10php表單請(qǐng)求獲得數(shù)據(jù)求和示例
這篇文章主要介紹了php表單請(qǐng)求獲得數(shù)據(jù)求和實(shí)現(xiàn)代碼,需要的朋友可以參考下2014-05-05php class中public,private,protected的區(qū)別以及實(shí)例分析
本篇文章是對(duì)php class中public,private,protected的區(qū)別以及實(shí)例進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06PHP+MySQL使用mysql_num_rows實(shí)現(xiàn)模糊查詢(xún)圖書(shū)信息功能
這篇文章主要介紹了PHP+MySQL使用mysql_num_rows實(shí)現(xiàn)模糊查詢(xún)圖書(shū)信息功能,涉及php使用mysql的like查詢(xún)語(yǔ)句進(jìn)行模糊查詢(xún)以及mysql_num_rows進(jìn)行結(jié)構(gòu)統(tǒng)計(jì)的相關(guān)操作技巧,需要的朋友可以參考下2018-05-05非集成環(huán)境的php運(yùn)行環(huán)境(Apache配置、Mysql)搭建安裝圖文教程
這篇文章主要介紹了非集成環(huán)境的php運(yùn)行環(huán)境(Apache配置、Mysql)搭建安裝圖文教程,感興趣的小伙伴們可以參考一下2016-04-04