栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

我可以用mysqli_一味地替换所有mysql_函数吗?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

我可以用mysqli_一味地替换所有mysql_函数吗?

简短的回答是 no ,功能不相等。

好消息是,有一个转换工具可以在您需要更改许多调用/项目时为您提供帮助。这将使您的脚本立即可用。

https://github.com/philip/MySQLConverterTool

它是Oracle原始版本的分叉版本,并且是犹太洁食。

也就是说,更新代码并不是很困难,并且您可能仍想迁移到面向对象的方法…

1)连接

为了所有目的和目的,您需要一个新的连接函数,例如,将连接另存为PHP变量;

$mysqli = new mysqli($host,$username,$password,$database);

请注意,我已将连接保存到

$mysqli
。您可以保存到
$db
或保存任何内容,但是在整个代码中都应使用它来引用连接。

不过请记住要检查连接错误;

if ($mysqli->connect_errno) echo "Error - Failed to connect to MySQL: " . $mysqli->connect_error;

2)查询

注意:您应该使用MySQLi中可用的预备语句来防止SQL注入。
看一看如何防止PHP中的SQL注入?,但我只是在这里介绍基础知识。

现在,您必须在查询和其他

mysqli_
函数中包括该连接作为参数。在过程代码中,它是第一个参数,在OO中,它像类方法一样编写;

程序:

$result = mysqli_query($mysqli,$sql);

OO:

$result = $mysqli->query($sql);

3)取得结果

结果的获取类似于过程中的旧

mysql_
函数;

while($row = mysqli_fetch_assoc($result))

但是就像

$result
现在在mysqli中的对象一样,您可以使用对象函数调用;

while($row = $result->fetch_assoc())

4)关闭连接

因此,与以前一样,您需要在close函数中包括连接;作为程序上的论点;

mysqli_close($mysqli);

作为在OO中运行该函数的对象;

$mysqli->close();

如果我全部经历了这些,我将永远在这里,但是您明白了。请查看文档以获取更多信息。不要忘记转换任何连接关闭,结果释放或错误和行计数功能。

基本的经验法则是使用数据库连接的函数,您现在需要将其包括在函数中(作为过程中的第一个参数,或用作OO中调用函数的对象),或结果集您可以将函数更改为

mysqli_
或将结果集用作对象。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/386404.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号