PHPにmysqlデータベースリンクをカプセル化(簡易版)
1509 ワード
1、mysqlデータリンクをカプセル化するにはどのような属性が必要ですか
ホストアドレス、データベース名、データベースパスワード、データベース名、文字セット
2,構造手法によりクラスをインスタンス化するとphp下位層で自動的に実行される特性を利用してデータベースリンククラスをカプセル化する
3、クラスをインスタンス化するときにパラメータ(配列)を渡します.パラメータには使用するデータが含まれています.
以上、単純なデータベースリンククラスをカプセル化し、sqlクエリ文を実行して配列を返します.
ホストアドレス、データベース名、データベースパスワード、データベース名、文字セット
2,構造手法によりクラスをインスタンス化するとphp下位層で自動的に実行される特性を利用してデータベースリンククラスをカプセル化する
3、クラスをインスタンス化するときにパラメータ(配列)を渡します.パラメータには使用するデータが含まれています.
class Dbname
{
public $host; // , 3306
public $user; //
public $pass; //
public $dbname; //
public $link; //
public $char; //
public $sql; //sql
public function __construct($db)
{
$this->host=$db['host'];
$this->user=$db['user'];
$this->pass=$db['pass'];
$this->dbname=$db['dbname'];
$this->char=$db['char'];
//
$this->dbSql();
//
$this->seleDb();
//
$this->setChar();
// mysql
$this->execute_dml();
}
//
public function dbSql()
{
$this->link=mysql_connect($this->host,$this->user,$this->pass) or die(' ');
}
//
public function seleDb()
{
mysql_select_db($this->dbname,$this->link);
}
//
public function setChar()
{
mysql_set_charset($this->char,$this->link);
}
}
// mysql
public function execute_dml($this->sql)
{
$data=array();
$res=mysql_query($this->sql);
while($row = mysql_fetch_assoc($res))
{
$data[] = $row;
}
return $data;
}
以上、単純なデータベースリンククラスをカプセル化し、sqlクエリ文を実行して配列を返します.