Heim  >  Artikel  >  Backend-Entwicklung  >  Beschreiben Sie kurz die Klassen für PHP zum Betrieb der MySQL-Datenbank

Beschreiben Sie kurz die Klassen für PHP zum Betrieb der MySQL-Datenbank

墨辰丷
墨辰丷Original
2018-06-11 15:47:281665Durchsuche

Dieser Artikel stellt hauptsächlich die PHP-Klassen zum Betreiben von MySQL-Datenbanken vor und umfasst grundlegende Betriebsmethoden wie das Verbinden, Abfragen, Einfügen und Löschen von PHP. Freunde, die dies benötigen, können sich darauf beziehen it

Das Beispiel in diesem Artikel beschreibt die PHP-Klasse, die die MySQL-Datenbank betreibt. Teilen Sie es als Referenz mit allen. Die Details sind wie folgt:

<?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, 0, -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 &#39;%".$where."%&#39;");
   while($arr = mysql_fetch_array($sql)) {
    if(strpos($arr[&#39;Type&#39;], &#39;enum&#39;)===0) {
     $vals = substr($arr[&#39;Type&#39;], 5, -1);
    } else {
     $vals = substr($arr[&#39;Type&#39;], 4, -1);
    }
    $vals = str_replace("&#39;","",$vals);
    $vals = explode(",",$vals);
    $i = 1;
    foreach($vals as $val) {
     $return[$arr[&#39;Field&#39;]][$i++] = $val;
    }
    $return[$arr[&#39;Field&#39;]][&#39;default&#39;] = $arr[&#39;Default&#39;];
    if($arr[&#39;Null&#39;] != "NO") $return[$arr[&#39;Field&#39;]][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.", ";
   }
   $table = substr($table, 0, -2);
  } else $table = $this->prefix.$tables;
  if(gettype($fieldsA) == "array") {
   $fields = "";
   $keys = array_keys($fieldsA);
   if($keys[0] != &#39;0&#39;) {
    foreach($keys as $key) {
     $fields .= $key.&#39; AS &#39;.$fieldsA[$key].&#39;, &#39;;
    }
   } else {
    foreach($fieldsA as $field) {
     $fields .= $field.&#39;, &#39;;
    }
   }
   $fields = substr($fields, 0, -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."`=&#39;".str_replace("&#39;",&#39;\&#39;&#39;, $valuesA[$key])."&#39;,";
    else
     $values .= $key."=NULL,";
   }
   $fields = substr($fields, 0, -1);
   $values = substr($values, 0, -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, $valuesA, $onDuplicate = NULL) {
  if(gettype($valuesA) == "array") {
   $fields = "";
   $values = "";
   $keys = array_keys($valuesA);
   foreach($keys as $key) {
    $fields .= "`".$key."`, ";
    $values .= ($valuesA[$key]===NULL?"NULL, ":"&#39;".str_replace("&#39;", &#39;\&#39;&#39;, $valuesA[$key])."&#39;, ");
   }
   $fields = substr($fields, 0, -2);
   $values = substr($values, 0, -2);
  }
  $onDup = "";
  if($onDuplicate != NULL) {
   $onDup = " ON DUPLICATE KEY UPDATE ";
   if(gettype($onDuplicate) == "array") {
    $keys = array_keys($onDuplicate);
    foreach($keys as $key) {
     $onDup .= &#39;`&#39;.$key.&#39;`=&#39;.($onDuplicate[$key]===NULL?"NULL,":"&#39;".str_replace("&#39;", &#39;\&#39;&#39;, $onDuplicate[$key])."&#39;, ");
    }
    $onDup = substr($onDup, 0, -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(&#39;hej&#39;);
  return $fields;
 }
 function translateCellName($cellName){
  $sql = $this->runSelect("mysql_cell_translation","mysql_name = &#39;".$cellName."&#39;");
  $row = mysql_fetch_assoc($sql);
  return $row[&#39;human_name&#39;]?$row[&#39;human_name&#39;]:&#39;<span class="faded">[&#39;.$cellName.&#39;]</span>&#39;;
 }
 function getError() {
  return mysql_error($this->linkId);
 }
 function close()
 {
  mysql_close($this->linkId);
 }
}
?>

Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.

Verwandte Empfehlungen:

So verwenden Sie PHP in Kombination mit HTML5-WebSocket-Kommunikation

PHP zum Hochladen von Bilddateien Ausführliche Erklärung der Funktion

So verwenden Sie PHP in Kombination mit der HTML5-Websocket-Kommunikation

Das obige ist der detaillierte Inhalt vonBeschreiben Sie kurz die Klassen für PHP zum Betrieb der MySQL-Datenbank. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn