欢迎来到天天文库
浏览记录
ID:27457694
大小:113.00 KB
页数:4页
时间:2018-12-03
《【前方高能】在php7中你一定不要做的10件事》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、千锋教育www.qfedu.com精品课程全程面授【前方高能】在PHP7中你一定不要做的10件事千锋PHP7.1培训课程以大数据集群作为新教学模式的切入点,每季度邀请百度技术官优化课程,在PHP7.1的学习应用中新增了不少特性,也总结了不少经验,今天千锋小编分享的是字PHP7.1中的十个禁忌。1.不要使用mysql_函数这一天终于来了,从此你不仅仅“不应该”使用mysql_函数。PHP7已经把它们从核心中全部移除了,也就是说你需要迁移到好得多的mysqli_函数,或者更灵活的PDO实现。2.不要编写垃圾代码这一条可能易于理解,但是会变得越来越重要,因为PHP7的速度提升可
2、能会隐藏你的一些问题。不要仅仅满足于你的站点速度,因为迁移到PHP7才让它变快。作为一名开发者,你应该总是确保按需加载脚本,尽可能连接它们,编写高效的数据库查询,尽可能使用缓存,以及其它。3.不要在文件末尾使用PHP闭合标签你可以看一看,当一个文件以PHP代码结尾时,WordPress多数核心代码都把末尾的PHP标签去掉了。实际上,Zend框架特别禁止了它。PHP并不需做真实的自己-用良心做教育千锋教育www.qfedu.com精品课程全程面授要文件末尾的闭合标签,并且我们可以通过去掉它来保证不会在后面添加任何的空白字符。1.不要做不必要的引用传递我个人不喜欢引用传递。我
3、知道有时候它很实用,但是其它情况下它使代码变得难懂,并且更难预测结果。据说一些人认为它使代码运行更快,但是根据一些PHP高级程序员所说,这并不正确。说明引用为什么不好的一个例子是,PHP内建了shuffle()和sort()。它们修改原始数组,而不是返回处理后的数组,这很不合逻辑。2.不要在循环中执行查询在循环中执行查询非常浪费。它给你的系统施加不必要的压力,并且可能能够在循环外部更快获得相同结果。当我遇到需要这样的情况时,我通常会使用两个分离的查询来解决问题,我会使用它们来构建数据数组。之后我会遍历数组,并不需要在这个过程中执行查询。由于WordPress适用于这里,它
4、可能有一些例外。虽然get_post_meta()会从数据库获取大量数据,如果你正在遍历某个特殊博文的元数据你可以在循环中使用它。这是因为当你第一次调用它的时候,WordPress实际上会获取所有元数据并缓存它们。后续的调用使用这些缓存数据,没有数据库的调用。弄懂这些的最佳方式是阅读函数文档,以及使用类似QueryMonitor的工具。3.不要在SQL查询中使用当然,这个更像MySQL的问题,但是我们习惯在PHP中编写SQL代码,所以都差不多。无论如何,如果可以避免的话,不要在SQL查询里使用通配符,尤其是数据库有很多列的时候。你应该明确指定需要哪些行,并且仅仅获取它们。
5、做真实的自己-用良心做教育千锋教育www.qfedu.com精品课程全程面授这有助于减少所用资源,保护数据,以及让事情变得尽可能清晰。对于SQL,你需要了解所有可用的函数,并且尽可能测试其速度。在计算均值、求和或计算类似数值时,要使用SQL函数而不是PHP函数。如果你不确定某个查询的速度,测试它并且尝试一些其它的编译—之后使用最好的那个。1.不要信任用户输入信任用户输入是不明智的。始终校验、过滤、转义、检查并留好退路。用户数据存在三个问题:我们开发者并没有考虑每种可能性,它通常不正确,以及它可能是蓄意破坏。经过周密考虑的系统可以防护这些威胁。要确保使用类似filter_v
6、ar()的内建函数检查适当的值,以及在处理数据库时转义(或预编译)。WordPress拥有一些函数来解决问题。详见文章校验、转义和过滤用户数据。2.不要故作聪明你的目标应该是编写优雅的代码,来更清晰地表达你的意图。你可能能够通过将任何东西缩短为一个单词的变量,使用多层的三元逻辑,以及其它手段,从每个页面中优化0.01秒。但这只会给你和你周围的人产生大麻烦。合理命名变量,为代码编写文档,优先选择清晰而不是简洁。甚至还可以更好,使用标准的面向对象代码,它本身或多或少就是文档,不需要一大堆内联数值。3.不要重新发明轮子PHP到现在为止有很长时间了,网站被造出来的时间更长。很可能
7、无论你需要造出什么,一些人之前早就造出来了。不要害怕向他人寻求支持,Github是你的好朋友,Composer也是,Packagist也是。从日志工具到调试工具,从性能分析器到单元测试框架,从MailchimpAPI到TwitterBootstrap,每个东西都可以通过按下按键(或者敲下命令)来获取,使用它们吧!做真实的自己-用良心做教育千锋教育www.qfedu.com精品课程全程面授1.不要忽略其它语言如果你是个PHP程序员,现在有个好机会去至少了解HTML、CSS、JavaScript和MySQL。当你能够更好地处理这些
此文档下载收益归作者所有