10条PHP编程习惯助你找工作

10条PHP编程习惯助你找工作

http://blog.csdn.net/yihan1029/article/details/41766413

 

1、使用单引号括起来的字符串

当使用双引号来括字符串时,PHP解释器会对其进行变量替换、转义等操作,如 “\n”。如果只想输出一个基本的字符串,

用单引号会节省一些资源。当然,如果需要进行变量替换的,那就必须用双引号了。

 

 

2、字符串的输出

以下哪一条语句的运行速度最快?

print “Hi my name is $a. I am $b”

echo“Himynameis$a.Iam$b”

 

echo “Hi my name is “.$a.”. I am “.$b;

echo “Hi my name is “,$a,”. I am “,$b;

echo ‘Hi my name is ‘,$a,’. I am ‘,$b;

 

最后一条的运行速度是最快的。 print比echo要慢,在字符串中进行变量替换时会慢,而连接字符串要比用逗号连接来得慢,

最后一句则是第一个习惯的体现。所以,不在字符串中进行变 量替换不仅会加快程序运行速度,也会让你的代码在任何语法高亮

显示的编辑器中显得更为易懂(变量会被高亮显示出来)。很少人知道echo的参数可以用逗号 连接,且速度会比字符串连接要来得快。

最后再用上第一个习惯,那这条语句就非常好了。

 

 

3、在数组索引中使用单引号

正 如你在上面的测试题中所看到的,$x[sales]从严格意义上来说是错误的,索引应该被括起来,即$x[‘sales’]。

这是因为PHP会将 没有括起来的索引辨认为“裸”字符串,并把它解释为一个常量。当找不到该常量的定义时,

才将其解释为一个字符串,所以这条语句才是可运行的。把索引括起来 可以省去这部分工作,

如果将来正好要用这一字符串定义常量时也就不会有错误了。

 

 

4、不使用开始标志的缩写形式

你正在使用 这样的符号吗?“<?”是非常糟糕的符号,它会引起与XML解释器的冲突。而且一旦你发布了这些代码,

那么使用者就必须修改php.ini文件来打 开对此符号的支持。所以实在没有理由去使用这种形式。用“<?php“吧。

 

 

5、尽量不要使用正则表达式

在进行 常规的字符串操作时,尽可能不要去使用正则表达式(preg和ereg系列函数)。str_replace函数要比preg_replace快得多,

甚至 strtr函数也要比str_replace来得快。省去这些不必要的麻烦吧,你的老板会感谢你的。

 

6、不要在循环声明中使用函数

这个问题不单单出现在PHP中,你可以在其他语言的代码中经常看到:

 

差:for($i=0;$i< count($array);$i++){…}

好:$count=count($array);for($i=0;$i& lt;$count;$i++){…}

 

如果在循环声明中使用了 count函数,那每次循环都会调用一次。如果循环次数很多,会浪费非常多的时间。

 

7、不要使用 register_globals和magic quotes

老版本的PHP在安装时会默认打开这两个功能,这会引起安全漏洞、编程错误及其他的问题,

如只有用户输入了数据时才会创建变量等。如今这两个功 能都被舍弃了,每个程序员都应该避免使用。

 

 

8、一定要对变量进行初始化(这 里的“初始化”指的是“声明”)

当需要没有初始化的变量,PHP解释器会自动创建一个变量,但依靠这个特性来编程并不是一 个好主意。

这会造成程序的粗糙,或者使代码变得另人迷惑,因为你需要探寻这个变量是从哪里开始被创建的。

另外,对一个没有初始化的变量进行递增操作要比初 始化过的来得慢。所以对变量进行初始化会是个不错的主意。

 

 

9、对代码进行注释

这个问题已经提过很多次了,但再多次也 不够。我知道有些地方是不聘用不对代码进行注释的程序员的。

我在前一次工作面试后和副总、面试官一起浏览我写的代码,当他们对我所做的代码注释印象深刻,

 还了解了一下我的这一习惯。一天之后,我得到了这个工作。

 

我知道有些自称为PHP大师的人声称自己的代码写得很好,不需要添加什么注 释。在我看来,这些人都是垃圾。

学一写注释的规范和技巧,熟悉一下phpDocumentor或Doxygen之类的注释辅助软件,都是值得的。

 

 

10、 遵循一个编程规范

关于这一点,是你需要在面试中询问你潜在的老板的,问问他们正在使用什么编程规范。PEAR?Zend?内部规范? 

要提及你正在使用的编程规范,不管是你自己创建的,还是目前普遍流行的一种。对于PHP这种松松垮垮的语言来说,

如果没有一个好的编程规范,那么那些代码 就会看起来想一堆垃圾。发臭的,令人作呕的垃圾。

一些基本的规范包括空格规范、打括号匹配、命名风格等。这对任何一个追求高质量的代码的人来说都是必须 的

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/113609.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 基于51单片机八路抢答器课程设计(含proteus仿真图及代码)

    基于51单片机八路抢答器课程设计(含proteus仿真图及代码)一、设计要求:1、可满足8个选手的抢答2、具有主持者控制开关,用来控制系统清零和抢答开始3、抢答器具有数据锁存功能、显示功能和声音提示功能4、抢答开始后,若有选手按动抢答器按钮,编号立即锁存,并在LED数5、码管上显示选手的编号,同时灯亮且伴随声音提示,还要禁止其后的抢答输入二、实验设计和分析1 总体设计方案方案一:采用数字电路控制。采用数字显示电路的好处就是设计简单。用以在P0口…

    2022年10月20日
  • 二叉树性质总结

    二叉树性质总结性质1:二叉树第i(i>=1)层上的节点数最多为2^(i-1)证明:归纳基础:第一层有一个节点,第二层最多有两个节点,第三层最多有四个节点,以此类推,数学归纳法证明如下:i=1时,2^(i-1)=2^0=1,因为第一层上为根节点,所以命题成立。归纳假设:假设对所有的j(1归纳步骤:根据归纳假设,第i-1层上至多有2(i-2)个节点,由于二叉树每个节点至多有两个孩子节点,所以第i

  • python怎么表示取余_python如何实现取余操作

    python怎么表示取余_python如何实现取余操作python实现取余操作的方法:可以利用求模运算符(%)来实现。求模运算符可以将两个数相除得到其余数。我们还可以使用divmod()函数来实现取余操作,具体方法如:【divmod(10,3)】。在python中要实现取余操作可以使用求模运算符(%),该运算符可以将两个数相除得到其余数。(推荐教程:Python入门教程)如果一个数恰好能被另外一个数据整除,则余数为0,%运算后返回结果为0。可利用余数…

  • vue富文本编辑器tinymce_idea代码高亮设置

    vue富文本编辑器tinymce_idea代码高亮设置1.查找IntelliJIDEA是否已经安装vue.js 注:之前有写过关于使用cmd命令搭建vue项目的全部过程,详情在此打开IDEA编辑器,快捷键Ctrl+Alt+S打开Settings(设置)——&gt;Plugins——&gt;搜索vue.js(图中已经安装,没有安装的点击InstallJetBrainsplugins…进行安装即可),安装成功后重启IDE…

  • mysql系列:全网最全索引类型汇总「建议收藏」

    mysql系列:全网最全索引类型汇总「建议收藏」前言除了常见的普通索引,唯一索引,组合索引,大家还能说一下mysql中有哪些其他类型的索引吗?今天和大家一起总结mysql中有哪些索引类型。一、mysql中有哪些索引类型?聚簇索引(ClusteredIndex)非聚簇索引主键索引(PRIMARYKEY)辅助索引(SecondaryIndexes)HASH索引BTREE索引T-TREE索引R-Tree索引自适应hash索引(AdaptiveHashIndex)唯一索引(UNIQUEIndexs)普通索引(No

  • 各省DNS列表[通俗易懂]

    各省DNS列表[通俗易懂]各省DNS列表省份/城市DNS名称DNSIPADDRESS==========================================================香港ns1.netvigator.com205.252.144.228澳门vassun2.macau.ctm.net202.175.3.8深圳ns.shenzhen.gd.cn202.96.

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号