php 数据库操作基础类DBObject Class的用法示例
内容摘要
这篇文章主要为大家详细介绍了php 数据库操作基础类DBObject Class的用法示例,具有一定的参考价值,可以用来参考一下。
php 数据库操作基础类DBObject Class,对此感兴趣的朋友
php 数据库操作基础类DBObject Class,对此感兴趣的朋友
文章正文
这篇文章主要为大家详细介绍了php 数据库操作基础类DBObject Class的用法示例,具有一定的参考价值,可以用来参考一下。
php 数据库操作基础类DBObject Class,对此感兴趣的朋友,看看idc笔记做的技术笔记。经测试代码如下:
/**
* 数据库操作基础类DBObject Class
*
* @param
* @arrange (www.idcnote.com)
**/
/* WORKS IN PHP5 ONLY */
class DBObject
{
private $id;
private $id_field;
private $table_name;
private $fields = array();
function __construct($table_name, $id_field, $fields)
{
$this->table_name = $table_name;
$this->id_field = $id_field;
foreach($fields as $key)
$this->fields[$key] = null;
}
function __get($key)
{
return $this->fields[$key];
}
function __set($key, $value)
{
if(array_key_exists($key, $this->fields))
{
$this->fields[$key] = $value;
return true;
}
return false;
}
function select($id)
{
global $db;
$db->query("SELECT * FROM " . $this->table_name . " WHERE " . $this->id_field . " = '$id'");
if(mysql_num_rows($db->result) == 0)
return false;
else
{
$this->id = $id;
$row = mysql_fetch_array($db->result, MYSQL_ASSOC);
foreach($row as $key => $val)
$this->fields[$key] = $val;
}
}
function insert()
{
global $db;
unset($this->fields[$this->id_field]);
$fields = join(", ", array_keys($this->fields));
$values = "'" . join("', '", $this->fields) . "'";
$db->query("INSERT INTO " . $this->table_name . " ($fields) VALUES ($values)");
$this->id = mysql_insert_id($db->db);
return $this->id;
}
function update()
{
global $db;
unset($this->fields[$this->id_field]);
$arrStuff = array();
foreach($this->fields as $key => $val)
$arrStuff[] = "$key = '$val'";
$stuff = implode(", ", $arrStuff);
$db->query("UPDATE " . $this->table_name . " SET $stuff WHERE " . $this->id_field . " = '" . $this->id . "'");
return mysql_affected_rows($db->db); // Not always correct due to mysql update bug/feature
}
function delete()
{
global $db;
$db->query("DELETE FROM " . $this->table_name . " WHERE " . $this->id_field . " = '" . $this->id . "'");
return mysql_affected_rows($db->db);
}
function empty_table()
{
global $db;
$db->query("DELETE FROM " . $this->table_name);
}
}
//
// class Person extends DBObject
// {
// function __construct()
// {
// parent::__construct('person', 'person_id', array('name', 'eye_color', 'hair_color'));
// }
// }
//
/*** 来自php教程(www.idcnote.com) ***/
注:关于php 数据库操作基础类DBObject Class的用法示例的内容就先介绍到这里,更多相关文章的可以留意
代码注释