我在windows7下使用php7和mysql,啟用mysql擴充的時候發現ext下只有php_pdo_mysql和php_mysqli。同時發現沒有mysql_*函數,尋找資料說是使用mysqlnd驅動。
這樣算是已經裝好mysqlnd了嗎? 然後我該怎麼使用。謝謝
回複內容:
我在windows7下使用php7和mysql,啟用mysql擴充的時候發現ext下只有php_pdo_mysql和php_mysqli。同時發現沒有mysql_*函數,尋找資料說是使用mysqlnd驅動。
這樣算是已經裝好mysqlnd了嗎? 然後我該怎麼使用。謝謝
首先糾正一個問題,
5.x開始,PHP串連MYSQL無論使用哪種方式都是使用的mysqlnd驅動(當然是在你安裝好的時候)。包括mysql_*
、PDO_MYSQL
、MYSQLi
--with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd
而不再是 --with-mysqli=/usr/local/mysql
mysqlnd
和mysql
mysqli
pdo_mysql
關係打比方說 mysqlnd
是金屬
,而mysql
mysqli
pdo_mysql
只是金屬製品
而已
使用PDO串連mysql
$pdo = new PDO('mysql:host=localhost;dbname=database_name;port=3306','使用者名稱','密碼');$pdo->exec('set names utf8');$stmt = $pdo->prepare("select * from table where id =:id");$stmt->bindValue(':id',1,PDO::PARAM_INT);$stmt->execute();$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);$rows = $pdo->query("select * from table where id = 1")->fetchAll(PDO::FETCH_ASSOC);
php7中mysql擴充被徹底移除,為了更好的向後相容性,請使用PDO;
你這意境算是裝好了,可以參考手冊用PDO串連資料庫
請多點使用PDO吧, 裡面有物件導向的思想,更好用
本來不想答的。。。。剛剛正愁著怎麼把老項目裡的mysql換成pdo就看到這個。。。。樓主,PDO你值得擁有