T086学习网 | 站长学院 | 技术文档 | 成语 | 歇后语 | 帝国时代 | 代码收藏 | IP地址查询 | 生活百科 | 生日密码 | CSS压缩 | 用户评论 | 欣欣百宝箱

优化PHP代码的40条建议

2008-12-24 09:15:17
简介英文版权归Reinhold Weber所有,中译文作者yangyang(aka davidkoree)。双语版可用于非商业传播,但须注明英文版作者、版权信息,以及中译文作者。翻译水平有限,请广大PHPer指正。 1.如果一个方法可静态化,就对它做静态声明。速率可提升至4倍。 2.echo 比 print 快。 3.使用echo的多重参数(译注:指用逗号而不是句点)代替字符串连接。 4.在执行for循环之前确定最大循环数,不要每循环一次都计算最大值。 5.注销那些不用的变量尤其是大数组,以便释放内存。6.尽量避免使用__get,__set,__autoload。 7.require_once()代价昂贵。 8.在包含文件时使用完整路径,解析操作系统... 查看详细内容 >>
优化PHP代码的40条建议的相关文章推荐

PHP 5.4及之后的版本的内置web服务器的使用

PHP是一种脚本语言,它需要PHP解释器来分析运行PHP文件。当把PHP做为CGI服务Web请求时,它需要被嵌入到某种Web服务器里,最常见的是集成到Apache或IIS里,这就是说,在使用PHP前,你需要安装Apache或IIS,并且正确的...

查看nginx、apache、mysql和php的编译安装参数

很多朋友可能会遇到这样一个问题,就是如何查看我系统编译安装的一些参数。在Linux系统下,查看nginx、apache、mysql和php的编译参数。1、nginx编译参数: your_nginx_dir/sbin/nginx -v 2、apache编译参数: cat yo...

php curl高效获取网页内容(IPV6下超时的解决办法)

如果开启了IPv6,curl默认会优先解析 IPv6,在对应domain域名没有 IPv6 的情况下,会等待 IPv6 dns解析失败 timeout 之后才按以前的正常流程去找 IPv4。如果在程序中对curl获取内容都作了较短时间的超时限制,如1秒,...

老王:一次nginx+php优化引发的血案

前些天一个Nginx+PHP项目上线后遭遇了性能问题,于是打算练练手,因为代码并不是我亲自写的,所以决定从系统层面入手看看能否做一些粗线条的优化。首先,我发现服务的Backlog设置过小,可以通过ss命令查询Send-Q来确...

图片优化的工具推荐

图片作为页面的一个主要因素,它的大小直接影响了页面的加载速度,这一点在移动端尤显突出。怎么让图片的大小更小?除了选择合适的格式(jpeg、gif、png),我们还可以利用网上的应用(如smushit、tinypng、imagemin...

如何做到每天都写代码

你是否曾为项目没有进展而惆怅过?想要有完整两天时间(没有任何的放松机会)来编程也不现实,时间的零乱往往让人不知所措。还有一个重要的问题就是你上个星期写的代码,隔一个星期后再接着写,你还能记得多少?为此...

PHP中copy on write写时复制机制

什么是写时复制(Copy On Write)?答:在复制一个对象的时候并不是真正的把原先的对象复制到内存的另外一个位置上,而是在新对象的内存映射表中设置一个指针,指向源对象的位置,并把那块内存的Copy-On-Write位设置...

那些强悍的PHP一句话后门

我们以一个学习的心态来对待这些PHP后门程序,很多PHP后门代码让我们看到程序员们是多么的用心良苦。强悍的PHP一句话后门这类后门让网站、服务器管理员很是头疼,经常要换着方法进行各种检测,而很多新出现的编写技术...

LINUX上MYSQL优化三板斧

现在MySQL运行的大部分环境都是在Linux上的,如何在Linux操作系统上根据MySQL进行优化,我们这里给出一些通用简单的策略。这些方法都有助于改进MySQL的性能。

编写更好的CSS代码

编写好的CSS代码,有助提升页面的渲染速度。本质上,引擎需要解析的CSS规则越少,性能越好。MDN上将CSS选择符归类成四个主要类别,如下所示,性能依次降低。ID 规则Class 规则标签规则通用规则对效率的普遍认识是从S...

贾真:如何做淘宝搜索标题优化

在开始做标题优化之前,我们先问自己一个问题,是要流量or要销量? 再远一点,我们是为了一笔订单还是为了获取一个客户? 做淘宝搜索优化不像做百度搜索优化,我们最终的目的是为了赢得客户。如果你认同了这点,那么...

MyISAM、INNODB类型表碎片优化

MyISAM表类型采用 OPTIMIZE TABLE table_name SQL语句清理碎片。InnoDB 使用的 Clustered Index,索引和数据绑定在一起,重排序是不现实的,所以不支持 MyISAM 式的 OPTIMIZE,而是绑定到了ALTER TABLE 命令上面。可以...

怎样正确设置remote_addr和x_forwarded_for

做网站时经常会用到remote_addr和x_forwarded_for这两个头信息来获取客户端的IP,然而当有反向代理或者CDN的情况下,这两个值就不够准确了,需要调整一些配置。什么是remote_addrremote_addr代表客户端的IP,但它的值...

请不要对我说“你要马上把这个小问题修改好”

这种事情不是简单的“几分钟”,你打断了我的工作思路,你的“小问题”至少会耽误我10分钟…我需要分析你的思想。如果我把你的想法理解错了,那就浪费了2小时的实际工作时间,因为我还需要去讨论你的真实意图…就算是...

lnmp多用户安全运行环境(chroot)

lnmp发展到今日,已经相当稳定,大部分程序也都可以平滑从apache移到nginx环境下。网上流行的lnmp一键包使很多Linux初学者可以非常方便地搭建自己的网站服务器。但随着建立的网站越来越多,安全性越来越成为威胁,由...

编程六月定律

如果你是个程序员,当你看6个月前写的代码时,如果发现跟现在写代码的水平一样,请别写了,你应该学习一些新东西了。

Function eregi is deprecated (解决方法)

在php升级到php5.3或php5.4之后,原有程序可能会出现Function eregi() is deprecated 的报错信息。这是因为php5.3起不再支持eregi()函数,而推荐使用preg_match()函数替代。解决的方法是:将eregi()函数替换成preg_m...

InnoDB count(*) 加速优化方案

1. cover index :where 条件后所有用到的column放在一起,做一个联合索引。且过滤性强的column放联合索引的最左。2. trigger + statistic table: 维护一个计数静态表,所有count(*) 通通走静态表,静态表的数据通过...

PHP is_file与file_exists 的使用

is_file真的可以替代file_exists使用吗?答案是否定的。为什么?原因很简单,is_file有缓存。我们可以使用下面的代码测试一下:

老王:如何正确配置Nginx+PHP

对很多人而言,配置Nginx+PHP无外乎就是搜索一篇教程,然后拷贝粘贴。听上去似乎也没什么问题,可惜实际上网络上很多资料本身年久失修,漏洞百出,如果大家不求甚解,一味的拷贝粘贴,早晚有一天会为此付出代价。假设...
更多
留言建议ASP探针PHP探针站长Enjoy的Blog
© 2017 T086学习网 - T086.com(原itlearner.com)
RunTime:14.32ms QueryTime:3