準備工作
php 5 及以上版本建議使用以下方式連線 mysql :
mysqli extension (「i」 意為 improved)
pdo (php data objects)
pdo 應用在 12 種不同資料庫中, mysqli 只針對 mysql 資料庫。
所以,如果你的專案需要在多種資料庫中切換,建議使用 pdo ,這樣你只需要修改連線字串和部分查詢語句即可。 使用 mysqli, 如果不同資料庫,你需要重新編寫所有**,包括查詢。
可以使用 phpinfo() 檢視是否安裝 mysqli 擴充套件和 pdo,pdo_mysql,必須安裝相應的擴充套件才能使用。
連線 mysql
servername = "localhost";username = "username";
password = "password";connection = new mysqli(servername,username, password); // 建立連線例項
if (connection->connect_error) else else else conn->close();
// 還可以使用下面的方法連線資料庫進行查詢
con=mysqli_connect(servername, username,password, dbname);
if (mysqli_connect_errno()) // 檢測連線
echo "連線失敗: " . mysqli_connect_error();
}result = mysqli_query(con,"select * from users
where firstname='wang'");
while(row = mysqli_fetch_array(result))
echorow['firstname'] . " " . $row['lastname'];
echo "
";注意事項
對於低版本的php,如php5.4,通過mysql預設是不能獲取資料模型的,也就是說查詢的所有欄位全為string,即使資料庫中儲存的是int型別。
使用mysqlnd和mysqli可以獲取資料模型,但是需要手動設定。
$connection = mysqli_connect(host, username, password , database);
mysqli_options($connection, mysqli_opt_int_and_float_native, true);
php傳值給mysql php中的引用傳值
一 簡單資料型別的的賦值為值傳遞,函式返回值賦值也是值傳遞。且php中引用採用的是 寫時拷貝 的原理,就是除非發生寫操作,指向同乙個位址的變數或者物件是不會被拷貝的。通俗的講 1 如果有下面的 a abc b a 其實此時 a與 b都是指向同一記憶體位址 而並不是 a與 b占用不同的記憶體 如果在上...
php 支援 mysql php支援mysql配置
想在centos5.2上裝乙個discuz論壇,在突破了apache許可權問題後,發現discuz的提示資訊裡顯示不支援mysql mysql connect 不支援 請檢查mysql 模組是否正確載入 我自己寫個測試檔案 php view plaincopy phpinfo 執行後顯示 c sha...
mysql php 操作 php操作mysql步驟
php操作mysql步驟 php操作mysql步驟 1.connect mysql connect localhost root 123456 or die 資料庫連線失敗。mysql error 鏈結mysql。2.mysql select db database connect 選擇鏈結的資料庫...