35 屏蔽敏感信息使用error_reporting()函数来预防潜在的敏感信息显示给用户 。
理想的错误报告应该被完全禁用在php.ini文件里 。可是如果你在用一个共享的虚拟主机,php.ini你不能修改,那么你最好添加error_reporting()函数,放在每个脚本文件的第一行(或用require_once()来加载)这能有效的保护敏感的SQL查询和路径在出错时不被显示;
36 压缩大的字符串使用gzcompress()和gzuncompress()对容量大的字符串进行压缩/解压,再存进/取出数据库 。这种内置的函数使用gzip算法,能压缩字符串90% 。
37 引用传递参数通过参数地址引用使函数有多个返回值,在参数变量前加个“&”表示按地址传递,而非按值传递 。
38 完全理解魔术引用和SQL注入的危险 。Fully understand “magic quotes” and the dangers of SQL injection. I’m hoping that most developers reading this are already familiar with SQL injection. However, I list it here because it’s absolutely critical to understand. If you’ve never heard the term before, spend the entire rest of the day googling and reading.
39 某些地方使用isset代替strlen当操作字符串并需要检验其长度是否满足某种要求时,你想当然地会使用strlen()函数 。此函数执行起来相当快,因为它不做任何计算,只返回在zval结构(C的内置数据结构,用于存储PHP变量)中存储的已知字符串长度 。但是,由于strlen()是函数,多多少少会有些慢,因为函数调用会经过诸多步骤,如字母小写化(译注:指函数名小写化,PHP不区分函数名大小写)、哈希查找,会跟随被调用的函数一起执行 。在某些情况下,你可以使用isset()技巧加速执行你的代码 。
例如:
if (strlen($foo) < 5) {echo "Foo is too short";}// 使用isset()if (!isset($foo{5})) {echo "Foo is too short";}
40 使用++$i递增当执行变量$i的递增或递减时,$i++会比++$i慢一些 。这种差异是PHP特有的,并不适用于其他语言,所以请不要修改你的C或JAVA代码并指望它们能立即变快,没用的 。++$i更快是因为它只需要3条指令(opcodes),$i++则需要4条指令 。后置递增实际上会产生一个临时变量,这个临时变量随后被递增 。而前置递增直接在原值上递增 。这是最优化处理的一种,正如Zend的PHP优化器所作的那样 。牢记这个优化处理不失为一个好主意,因为并不是所有的指令优化器都会做同样的优化处理,并且存在大量没有装配指令优化器的互联网服务提供商(ISPs)和服务器 。
40 不要随便复制变量有时候为了使 PHP 代码更加整洁,一些 PHP 新手(包括我)会把预定义好的变量复制到一个名字更简短的变量中,其实这样做的结果是增加了一倍的内存消耗,只会使程序更加慢 。试想一下,在下面的例子中,如果用户恶意插入 512KB 字节的文字到文本输入框中,这样就会导致 1MB 的内存被消耗!
// 不好的实践$description = $_POST['description'];echo $description;// 好的实践 echo $_POST['description'];
41 使用选择分支语句switch、case好于使用多个if、else if语句,并且代码更加容易阅读和维护 。
42 用file_get_contents替代file、fopen、feof、fgets在可以用file_get_contents()替代file()、fopen()、feof()、fgets()等系列方法的情况下,尽量用file_get_contents(),因为他的效率高得多!但是要注意,file_get_contents()在打开一个URL文件时候的PHP版本问题 。
43 尽量的少进行文件操作,虽然PHP的文件操作效率也不低的44 优化Select SQL语句在可能的情况下尽量少的进行insert、update操作(在update上,我被恶批过) 。
45 尽可能的使用PHP内部函数46 循环内部不要声明变量,尤其是大变量:对象这好像不只是PHP里面要注意的问题吧?
47 多维数组尽量不要循环嵌套赋值
推荐阅读
- AI也会遭遇瓶颈 解析人工智能技术的存储性能需求
- 淘宝产品优化从几个方面进行 如何提升产品的竞争力
- 淘宝直通车点击率低怎么优化 淘宝直通车怎么优化
- 关键词推广方式 超级推荐的关键词怎么优化
- 超级推荐关键词兴趣人群怎么添加 超级推荐的关键词怎么优化
- Nginx服务器高性能优化--轻松实现10万并发访问量
- mysql5.7性能提升一百倍调优宝典
- 生意参谋选关键词的公式 什么是生意参谋,如何利用生意参谋优化关键词?
- 高性能网络通信框架 HP-Socket v5.7.2
- 多云架构的3个常见性能挑战和解决方案