1. 程式人生 > >php連線mysql的三種方式

php連線mysql的三種方式

1:使用面向過程:

// 設定資料庫引數
define('DB_USER','blog');
define('DB_PASSWORD','lmm13637064637');
define('DB_HOST','localhost');
define('DB_NAME','webspell');
// 資料庫初始化
if(!$conn = @mysql_connect(DB_HOST,DB_USER,DB_PASSWORD)){
	exit('資料庫連結失敗'.mysql_error());
};
//連線資料庫
if(!mysql_select_db(DB_NAME)){
	exit('資料庫找不到!'.mysql_error());
};
//設定字符集
if(!mysql_query('SET NAMES UTF8')){
	exit('字符集設定錯誤!'.mysql_error());
};

 2:使用mysqli物件:

//profile.inc.php:
<?php
    // 資料庫配置檔案
    define('DB_HOST','localhost');    	     //主機IP
    define('DB_USER','root');                //賬號
    define('DB_PASSWORD','lmm13637064637');  //密碼
    define('DB_NAME','cms');                 //資料庫
?>


// 資料庫連線類 DB.class.php:
    class DB{
	// 連線資料庫
	static public function getDB(){
	// 使用過程化操作資料庫
	// 連線資料庫,並且獲取資料庫物件控制代碼
	$_mysqli = new mysqli(DB_HOST,DB_USER,DB_PASSWORD,DB_NAME);
	// 錯誤處理
	if(mysqli_connect_errno()){
		echo "資料庫連線失敗".mysqli_connect_error();
		exit();
	}
	// 設定字符集
	$_mysqli->set_charset('utf8');
                return $_mysqli;
	}
//呼叫類 action.php
<?php
    require 'profile.php';
    require 'DB.class.php';
    $_mysqli = DB::getDB();
?>

3:使用PDO物件:

//DB.class.php
class DB{
    public $_pdo;  //存放pdo物件
    public $_drive_opt =          array(PDO::ATTR_AUTOCOMMIT=>0,PDO::MYSQL_ATTR_INIT_COMMAND=>'SET NAMES UTF8');
    public function __construct(){
	try{
	        $this->_pdo = new PDO('mysql:host=localhost;dbname=mall','root','lmm13637064637',$this->_drive_opt);
	}catch(PDOException $e){
	        exit($e->getMessage());
	    }
	}
}
//呼叫類
class a{
    $_pdo = new DB();
}