MySQL与PHP中的MySQLi

时间:2009-12-29 00:22:31

标签: php mysql mysqli

每个的差异/优势是什么?缺点

我不是在寻找编码偏好或主观答案。

实用差异是什么? (存储,实现,代码的外观,环境要求......)

3 个答案:

答案 0 :(得分:11)

您可以将prepared statements与mysqli一起使用。
还有一个function to store large (blob) data,“旧的”mysql扩展没有。

// php-mysql: no oo-interface
$mysqli = new mysqli('localhost', 'localonly', 'localonly');
if ($mysqli->connect_error) {
  die($mysqli->connect_error);
}

// php-mysql: no prepared statements
$stmt = $mysqli->prepare("INSERT INTO foo (mydata) VALUES (?)");
$stmt->bind_param("b", $null);

// php-mysql: no function to send data in chunks
$fp = fopen("php://input", "r");
while (!feof($fp)) {
  $chunk = fread($fp, 4096);
  $stmt->send_long_data(0, $chunk);
}
$stmt->execute();

答案 1 :(得分:9)

阅读PHP手册上的overview,它回答了大多数问题,并有比较图表。

答案 2 :(得分:3)

预备语句可在mysqli中找到。您也可以使用OO界面,而不是mysql_foo_bar() $con->foo_bar()