如果我将所有内容都保留为已弃用的 mysql_* 扩展名,我的应用程序是否会在 Internet 上无法访问?
只有当运行它的服务器升级到不支持旧 API 的 PHP 版本时,您的应用程序才会中断。如果您的服务器没有升级到 PHP 5.5,那么您的应用程序将无限期地继续运行。在这方面,外部互联网上的任何其他内容都不会影响它;只有升级到您自己的服务器是相关的。
目前,php 5.4 仍然受到积极支持,因此您可以愉快地继续使用该版本,而无需担心您的代码会突然中断。
但是,在将来的某个时候,出于某种原因,您将需要升级到 PHP 5.5 或更高版本。PHP 5.4 将终止使用,建议迁移到 5.5。或者,如果您使用的是共享主机帐户,您甚至可能无法选择您的 PHP 版本。所以是的,您应该期望您当前的代码不适用于您当时使用的 PHP 版本。最终。
因此,虽然没有立即进行转换的紧迫性,但您应该考虑尽快这样做。您不想要的一件事是当事情破裂的那一天到来时,您会发现自己陷入困境。
5.5 刚刚发布,因此您可能需要几年时间才能成为可用的最低版本,但请接受我的建议;你不想等到最后一刻。
我是否应该花一些时间来更改所有 mysql_* 调用并用 mysqli_* 调用切换它们。
您说您的应用程序“非常强大”并且“可能不会得到增强”。所以它基本上处于一个仅长期维护的阶段。
鉴于这些标准,我会说是的,简单地切换到mysqli
lib 是明智之举。所需的更改相当微不足道(听起来您已经掌握了要做什么),并且对软件的其余部分几乎没有任何影响。
如果您的代码确实健壮且编写良好,那么您将对其进行结构化,以便有某种数据库层,这意味着您无论如何都没有太多事情要做。
如果它的结构不是很好,它可能有很多mysql_query()
分散在代码周围的调用,在这种情况下,它可能需要更多的工作。在这种情况下,由于您无论如何都在处理代码,您可能会考虑花时间进行一些重组。创建数据库层。也许开始使用准备好的语句。我还建议切换到 PDO 而不是mysqli
. 但是你的电话——鉴于你在问题中所说的,如果你想做尽可能少的工作是可以理解的。
顺便说一句 - 如果您还没有这样做,您可能还想阅读以下内容:为什么我不应该在 PHP 中使用 mysql_* 函数?