Code前端首页关于Code前端联系我们

PHP 7 中不要做的 10 件事

terry 2年前 (2023-09-25) 阅读数 49 #后端开发

1。不要使用 mysql_ 函数

“不应该”使用 mysql_ 函数的这一天终于到来了。 PHP 7 已将它们从核心中全部删除,这意味着您必须转向更好的 mysqli_ 函数或更灵活的 PDO 实现。

PHP 7 中不要做的 10 件事

2。不要编写垃圾代码

这可能很容易理解,但它变得越来越重要,因为 PHP 7 的速度改进可以隐藏您的一些问题。不要仅仅满足于网站的速度,迁移到 PHP 7 会让网站变得更快。

要了解速度的重要性以及如何做得更好,请查看我们的文章速度优化入门。

作为开发人员,您应该始终确保根据需要加载脚本、尽可能多地连接到它们、编写高效的数据库查询、尽可能多地使用缓存等等。

3。不要在文件末尾使用 PHP 结束标签

可以看到,当文件以 PHP 代码结尾时,大多数 WordPress 核心代码都会从末尾删除 PHP 标签。事实上,Zend Framework 禁用了它。 PHP 不需要在文件末尾添加结束标记,我们可以通过删除它来确保末尾不会添加空格。

4。不要进行不必要的传递参考

我个人不喜欢传递。我知道有时它很有用,但有时它会使代码难以理解并且结果更难以预测。

据说有些人认为它会使代码运行得更快,但根据一些高级 PHP 程序员的说法,事实并非如此。

引用不好的一个例子是 PHP 具有内置的 shuffle() 和 sort()。他们修改原始数组而不是返回处理后的数组,这是非常不合逻辑的。

5。不要在循环中运行查询

在循环中运行查询是非常没有意义的。它会给您的系统带来不必要的压力,并且可能能够在循环外更快地实现相同的结果。当我遇到需要这样的情况时,我通常使用两个单独的查询来构建数据表来解决问题。然后,我迭代该数组,并且不必在此过程中运行查询。

由于这里使用的是WordPress,所以可能会有一些例外。尽管 get_post_meta() 从数据库获取大量信息,但如果您正在浏览特定博客文章的元数据,则可以在循环中使用它。这是因为 WordPress 实际上会在您第一次调用它时获取所有元数据并缓存它。后续调用将使用此缓存数据,而无需数据库调用。

解决这个问题的最佳方法是阅读该函数的文档并使用查询监视器等工具。

6。不要使用*

当然,这更多是MySQL的问题,但是我们习惯用PHP编写SQL代码,所以几乎是一样的。但是,如果可以避免,请避免在 SQL 查询中使用通配符,尤其是在数据库有多列的情况下。

单独确定需要哪些行并仅获取它们。这有助于减少使用的资源、保护数据并使事情尽可能清晰。

在 SQL 中,您需要了解所有可用函数并测试它们的速度(如果可能)。在计算平均值、总和或类似的数值计算时,请使用 SQL 函数而不是 PHP 函数。如果您不确定特定查询的速度,请测试它并尝试其他集合 - 然后使用最好的一个。

7。不要信任用户输入

依赖用户输入是不明智的。始终确认、过滤、逃脱、检查并离开出口。用户数据存在三个问题:我们开发人员不会考虑每种可能性,它通常不准确,并且可能会被故意泄露。

经过深思熟虑的系统可以防范这些威胁。在操作数据库时,请务必使用内置函数(例如filter_var()和Escape(或预编译))检查适当的值。

WordPress 有一些功能可以解决这个问题。有关更多信息,请参阅验证、强制和过滤用户数据。

8。不要自作聪明

你的目标应该是优雅的代码,更清楚地表达你的意图。您可以通过将所有内容缩短为单个单词变量、使用多层三元逻辑和其他方式来优化每页 0.01 秒。但这只会给你和你周围的人带来大问题。

明智地命名变量,记录代码,并优先考虑清晰性而不是简洁性。最好使用纯目标代码,它或多或少是文档本身,没有一堆内部值。

9。不要重新发明轮子

PHP 已经存在很长时间了,网站的存在时间甚至更久。很可能,无论您需要构建什么,以前就有人已经构建过它。不要害怕向别人寻求支持,Github 是你的朋友,Composer 也是,Packagist 也是。

从日志记录工具到色彩校正工具,从性能分析器到单元测试框架,从Mailchimp API到Twitter Bootstrap,一切都可以通过单击按键(或键入命令)来获得,使用它们!

10。不要忘记其他语言

如果您是一名 PHP 程序员,现在是至少了解 HTML、CSS、JavaScript 和 MySQL 的好机会。一旦您更好地掌握了这些语言,就可以再次学习 JavaScript 了。 JavaScript 不是 jQuery,你应该正确学习 JavaScript 才能更有效地使用它。

我还建议学习面向对象的PHP,它可以节省时间,并且在代码量较大时提高性能。当你了解 OOP 时,像 C# 和 Java 这样的语言也更容易理解。

通过学习包管理器、脚本构建、CoffeeScript、LESS、SASS、YAML、脚本引擎和其他强大的工具来扩展您的知识。我建议你看看其他框架,尤其是 Laravel。

如果您学会了如何开发 Ruby、RoR、Android、iPhone 和 Windows Phone 应用程序,同时使用它们来出色地完成工作,会怎么样?您可能认为这毫无意义,因为他们超出了您的舒适区和工作要求,但事实确实如此。每种语言都有一些实用的东西需要学习,也有一些你以前从未遇到过的新东西。所有顶级 PHP 开发人员都了解许多其他编程语言,这并非巧合。

内容来源:码农网

原文链接:http://www.codeceo.com/article/10-things-not-do-in-php7.html

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门