《PHP实例:PHP简单操作MysqL数据库的类》要点:
本文介绍了PHP实例:PHP简单操作MysqL数据库的类,希望对您有用。如果有疑问,可以联系我们。
PHP教程本文实例讲述了PHP简单操作MysqL数据库的类.分享给大家供大家参考.具体如下:
PHP教程 <?PHP /** * Database class * * @version: 2.2 * @revised: 27 may 2007 * **/ class Database { var $host; var $name; var $user; var $pass; var $prefix; var $linkId; function Database($MysqL) { foreach($MysqL as $k => $v){ $this->$k = $v; } if(strlen($this->prefix)>0 && substr($this->prefix,-1) !== "_") $prefix .= "_"; $this->prefix = $prefix; } function getLastID() { $id = MysqL_fetch_row(MysqL_query("SELECT LAST_INSERT_ID()",$this->linkId)); return $id[0]; } function getPossibleValues($tableA,$whereA) { if(gettype($tableA) == "array") { $table = ""; foreach($tableA as $t) { $table .= $this->prefix.$t.","; } $table = substr($table,-2); } else $table = $this->prefix.$tableA; if(gettype($whereA) != "array") { $whereA = array($whereA); } $return = array(); foreach($whereA as $where) { $sql = MysqL_query("SHOW COLUMNS FROM ".$table." LIKE '%".$where."%'"); while($arr = MysqL_fetch_array($sql)) { if(strpos($arr['Type'],'enum')===0) { $vals = substr($arr['Type'],5,-1); } else { $vals = substr($arr['Type'],4,-1); } $vals = str_replace("'","",$vals); $vals = explode(",",$vals); $i = 1; foreach($vals as $val) { $return[$arr['Field']][$i++] = $val; } $return[$arr['Field']]['default'] = $arr['Default']; if($arr['Null'] != "NO") $return[$arr['Field']][0] = NULL; } } return $return; } function connect() { $this->linkId = MysqL_connect($this->host,$this->user,$this->pass); if(!$this->linkId) { return false; } if(MysqL_select_db($this->name,$this->linkId)) return true; MysqL_close($this->linkId); return false; } function runSelect($tables,$where = "1",$fieldsA = "*",$order = false,$limit = false,$offset = false,$group = false) { if(gettype($tables) == "array") { $table = ""; foreach($tables as $t) { $table .= $this->prefix.$t.",-2); } else $table = $this->prefix.$tables; if(gettype($fieldsA) == "array") { $fields = ""; $keys = array_keys($fieldsA); if($keys[0] != '0') { foreach($keys as $key) { $fields .= $key.' AS '.$fieldsA[$key].','; } } else { foreach($fieldsA as $field) { $fields .= $field.','; } } $fields = substr($fields,-2); } else $fields = $fieldsA; $query = "SELECT ".$fields." FROM ".$table." WHERE ".$where. ($order!== false?" ORDER BY ".$order:($group!==false ? " GROUP BY ".$group : "")). ($limit !== false?" LIMIT ".$limit:""). ($offset !== false?" OFFSET ".$offset:""); return MysqL_query($query,$this->linkId); } function runUpdate($table,$valuesA,$where = "1") { if(gettype($valuesA) == "array") { $fields = ""; $values = ""; $keys = array_keys($valuesA); foreach($keys as $key) { if($valuesA[$key] !== NULL) $values .= "`".$key."`='".str_replace("'",'\'',$valuesA[$key])."',"; else $values .= $key."=NULL,"; } $fields = substr($fields,-1); $values = substr($values,-1); } else $values = $valuesA; $query = "UPDATE ".$this->prefix.$table." SET ".$values." WHERE ".$where; if(MysqL_query($query,$this->linkId)) return MysqL_affected_rows($this->linkId); return false; } function runDelete($table,$where = "1") { if(MysqL_query("DELETE FROM ".$this->prefix.$table." WHERE ".$where,$this->linkId)) return MysqL_affected_rows($this->linkId); return false; } function runInsert($table,$onDuplicate = NULL) { if(gettype($valuesA) == "array") { $fields = ""; $values = ""; $keys = array_keys($valuesA); foreach($keys as $key) { $fields .= "`".$key."`,"; $values .= ($valuesA[$key]===NULL?"NULL,":"'".str_replace("'","); } $fields = substr($fields,-2); $values = substr($values,-2); } $onDup = ""; if($onDuplicate != NULL) { $onDup = " ON DUPLICATE KEY UPDATE "; if(gettype($onDuplicate) == "array") { $keys = array_keys($onDuplicate); foreach($keys as $key) { $onDup .= '`'.$key.'`='.($onDuplicate[$key]===NULL?"NULL,$onDuplicate[$key])."',"); } $onDup = substr($onDup,-2); } else $onDup .= $onDuplicate; } $query = "INSERT INTO ".$this->prefix.$table.($fields!==NULL?"(".$fields.")":""). " VALUES (".$values.")".$onDup; if(MysqL_query($query,$this->linkId)) return MysqL_affected_rows($this->linkId); return false; } function getCells($table){ $query = "SHOW COLUMNS FROM `".$table."`"; $fields = MysqL_query($query,$this->linkId) or die('hej'); return $fields; } function translateCellName($cellName){ $sql = $this->runSelect("MysqL_cell_translation","MysqL_name = '".$cellName."'"); $row = MysqL_fetch_assoc($sql); return $row['human_name']?$row['human_name']:'<span class="faded">['.$cellName.']</span>'; } function getError() { return MysqL_error($this->linkId); } function close() { MysqL_close($this->linkId); } } ?>
PHP教程希望本文所述对大家的PHP+MysqL数据库程序设计有所赞助.
《PHP实例:PHP简单操作MysqL数据库的类》是否对您有启发,欢迎查看更多与《PHP实例:PHP简单操作MysqL数据库的类》相关教程,学精学透。编程之家 jb51.cc为您提供精彩教程。