PHP的MySQL扩大是设想开辟许可php运用与MySQL数据库交互的初期扩大。MySQL扩大供应了一个面向历程的接口,并且是针对MySQL4.1.3或许更早版本设想的。因而这个扩大虽然能够与MySQL4.1.3或更新的数据库效劳端举行交互,但并不支撑后期MySQL效劳端供应的一些特征。因为太陈旧,又不平安,所以已被厥后的mysqli完整庖代;
PHP的mysqli扩大,我们偶然称之为MySQL加强扩大,能够用于运用 MySQL4.1.3或更新版本中新的高等特征。其特性为:面向对象接口 、prepared语句支撑、多语句实行支撑、事件支撑 、加强的调试才能、嵌入式效劳支撑 、预处理体式格局完整处理了sql注入的题目。不过其也有瑕玷,就是只支撑mysql数据库。假如你如果不操纵其他的数据库,这无疑是最好的挑选。
PDO是PHP Data Objects的缩写,是PHP运用中的一个数据库笼统层范例。PDO供应了一个一致的API接口能够使得你的PHP运用不去体贴具体要衔接的数据库效劳器体系范例,也就是说,假如你运用PDO的API,能够在任何须要的时刻无缝切换数据库效劳器,比如从Oracle 到MySQL,仅仅须要修正很少的PHP代码。其功用类似于JDBC、ODBC、DBI之类接口。一样,其也处理了sql注入题目,有很好的平安性。不过他也有瑕玷,某些多语句实行查询不支撑(不过该状况很少)。
1.PHP与Mysql扩大(本扩大自 PHP 5.5.0 起已烧毁,并在未来会被移除),PHP原生的体式格局去衔接数据库,是面向历程的
<?php $mysql_conf = array( 'host' => '127.0.0.1:3306', 'db' => 'test', 'db_user' => 'root', 'db_pwd' => 'root', ); $mysql_conn = @mysql_connect($mysql_conf['host'], $mysql_conf['db_user'], $mysql_conf['db_pwd']); if (!$mysql_conn) { die("could not connect to the database:\n" . mysql_error());//诊断衔接毛病 } mysql_query("set names 'utf8'");//编码转化 $select_db = mysql_select_db($mysql_conf['db']); if (!$select_db) { die("could not connect to the db:\n" . mysql_error()); } $sql = "select * from user;"; $res = mysql_query($sql); if (!$res) { die("could get the res:\n" . mysql_error()); } while ($row = mysql_fetch_assoc($res)) { print_r($row); } mysql_close($mysql_conn); ?>
2.PHP与Mysqli扩大,面向历程、对象
<?php $mysql_conf = array( 'host' => '127.0.0.1:3306', 'db' => 'test', 'db_user' => 'root', 'db_pwd' => 'joshua317', ); $mysqli = @new mysqli($mysql_conf['host'], $mysql_conf['db_user'], $mysql_conf['db_pwd']); if ($mysqli->connect_errno) { die("could not connect to the database:\n" . $mysqli->connect_error);//诊断衔接毛病 } $mysqli->query("set names 'utf8';");//编码转化 $select_db = $mysqli->select_db($mysql_conf['db']); if (!$select_db) { die("could not connect to the db:\n" . $mysqli->error); }$sql = "select uid from user where name = 'joshua';"; $res = $mysqli->query($sql); if (!$res) { die("sql error:\n" . $mysqli->error); } while ($row = $res->fetch_assoc()) { var_dump($row); } $res->free(); $mysqli->close(); ?>
2.PHP与PDO扩大,面向历程、对象
<?php $mysql_conf = array( 'host' => '127.0.0.1:3306', 'db' => 'test', 'db_user' => 'root', 'db_pwd' => 'joshua317', ); $pdo = new PDO("mysql:host=" . $mysql_conf['host'] . ";dbname=" . $mysql_conf['db'], $mysql_conf['db_user'], $mysql_conf['db_pwd']);//建立一个pdo对象 $pdo->exec("set names 'utf8'"); $sql = "select * from user where name = ?"; $stmt = $pdo->prepare($sql); $stmt->bindValue(1, 'joshua', PDO::PARAM_STR); $rs = $stmt->execute(); if ($rs) { // PDO::FETCH_ASSOC 关联数组情势 // PDO::FETCH_NUM 数字索引数组情势 while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { var_dump($row); } } $pdo = null;//封闭衔接 ?>
以上就是php怎样衔接mysql5.0?的细致内容,更多请关注ki4网别的相干文章!