This question already has an answer here:
-
Advantages Of MySQLi over MySQL [closed]
2 answers
What are the differences/advantages of each? Disadvantages?
I'm not looking for coding preferences or subjective answers.
What are practical diferences? (Storage, implementation, how the code looks, environment requirements...)
You can use prepared statements with mysqli.
And there's also a function to store large (blob) data that the "old" mysql extension has not.
// 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();
Read the overview on the PHP manual, it answers most questions and has a comparison chart.
Prepared statements are available in mysqli, for one. You can also use the OO interface so instead of mysql_foo_bar()
you have $con->foo_bar()
.