PHP程序员一般都忽略了的几点精华_php基础

    我发现很多的PHP程序员,尤其是学习还不是很久的,都不知道PHP的精华所在。Perl当年如何在商界出名?其强大的正则表达式。而PHP呢?他是一门从Unix下发展起来的语言,当然也就继承了Perl的很多特点,同时C的优点都有。快速、简洁、明了,尤其是C程序员,PHP是至爱,我就是深爱着“PHP”(都忘了女友了:))。这里,我想来写一篇PHP的变量、数组应用技巧和PHP的正则表达式、PHP的模板应用,以后有时间再写PHP与COM、PHP与XML的完全结合。

1、变量、数组的应用技巧
(1)很多人用得不多的数组函数。foreach、list、each。分别举几个例子,应该就能知道了。例:
<?php
$data = array('a' => 'data1', 'b' => 'data2', 'c' => 'data3');
while(list($subscript, $value) = each($data))
{
echo "$subscript => $value :: ";
echo "$subscript => $value\n<br>";
}

reset($data);
foreach($data as $subscript => $value)
{
echo "$subscript => $value :: ";
echo "$subscript => $value\n<br>";
}
(2)函数的变量、变量的变量、变量的“指针”:看下例:
<?php
//变量的变量
$var = "this is a var";
$varname = "var";
echo $$varname;
//函数的变量
function fun1($str) {
echo $str;
}
$funname = "fun1";
$funname("This is a function !");
?>
变量的“指针”。这个指针加上了双引号,表明他不是真正的指针。看看下例:
<?php
function($a) {
$a ++;
}
$c = 0;
function($c);
echo $c; //$c仍为0
function(&$a) {
$a ++;
}
$c = 0;
echo $c; //$c为1
?>
之所以称其为“指针”,就是因为他有了和C语言中指针相同的功能。但这又不是真正的指针,只能够是这样的去理解。

2、正则表达式
正则表达式是一个非常大的题目,Perl的正则表达式的强大是闻了名的。而PHP也不弱,他继承了Perl的正则表达式法则,还有自己的一套法则。这里只说PHP自己的正则表达式。
正则表达式是最基本的元素。简单地说就是一套规则,用于去判定其它的元素是不是符合自身的规则,或者说是不是有相同的特征描述。
正则表达式的开始符:^,结尾符$,这两个符号间的是匹配的元素。如检查一个电话号码是不是打往北京的号,用正则表达式表示就是“^010$”。只要前3位区号是010,就是北京的号,后面的电话号码就不用管了。然后,用正则表达式匹配函数ereg来判断,例:
<?php
$pattern = "^010$";
$phone = "01080718828";
if(ereg($pattern, $phone))
echo "打往北京的号";
else
echo "不是打往北京的号";
?>
这就是正则表达式。北京的电话都是8位数字的,那我要知道这个号码是不是正确了?假如他按了9位号呢?如果判断正误?这就要用到正则表达式的字符簇。那么上例的正则表达式就要这样写:^010[0-9]{8}$,就能同时判断号码是不是符合规则。正则表达式有很多的应用,像LBB、VBB论坛在发贴时的所谓VBB代码LBB代码的解析,都是用正则表达式完成的。

3、模板
知道了正则表达式的功能,那么就可以知道模板了。什么是模板?举个例子吧?一般写网页用到了后台程序的时候,都是在网页里面插入程序代码。如PHP。这就是HTML和PHP的混写。这样的优点是读取速度快,缺点是如果大家分工合作做网站,那么非程序员就不会改网了。
而用模板,则可以达到分工的最合理化。美工只做页面,程序只写后台,然后再合起来。优秀的Jsp提供了自定义标签的功能很好地完成了模板功能。而主流的PHP如何做到呢?就是利用正则表达式来做到的。可以去网上下载一个PHPLIB,里面的PHP目录下有一个template.inc的源代码文件,那就是用PHP实现模板套用的类。

由于篇幅有限,这里只是简单地说一说这些内容,如果真的想学的话,还请看专门的教材。如光要讲清楚正则表达式就可以写上一本小书。

时间: 2024-09-17 04:44:21

PHP程序员一般都忽略了的几点精华_php基础的相关文章

PHP程序员一般都忽略了的几点精华

程序|程序员|精华 我发现很多的PHP程序员,尤其是学习还不是很久的,都不知道PHP的精华所在.Perl当年如何在商界出名?其强大的正则表达式.而PHP呢?他是一门从Unix下发展起来的语言,当然也就继承了Perl的很多特点,同时C的优点都有.快速.简洁.明了,尤其是C程序员,PHP是至爱,我就是深爱着"PHP"(都忘了女友了:)).这里,我想来写一篇PHP的变量.数组应用技巧和PHP的正则表达式.PHP的模板应用,以后有时间再写PHP与COM.PHP与XML的完全结合. 1.变量.数

SQL Server 致程序员(容易忽略的错误)

原文:SQL Server 致程序员(容易忽略的错误) 标签:SQL SERVER/MSSQL/DBA/T-SQL好习惯/数据库/需要注意的地方/程序员/容易犯的错误/遇到的问题 概述 因为每天需要审核程序员发布的SQL语句,所以收集了一些程序员的一些常见问题,还有一些平时收集的其它一些问题,这也是很多人容易忽视的问题,在以后收集到的问题会补充在文章末尾,欢迎关注,由于收集的问题很多是针对于生产数据,测试且数据量比较大,这里就不把数据共享出来了,大家理解意思就行.   步骤 大小写 大写T-SQ

新人 学习方向-我想知道一名程序员需要都了解什么知识?

问题描述 我想知道一名程序员需要都了解什么知识? 我现在是一名大二软件专业的学生,我挺喜欢这个专业的,但是学了一年多有点迷茫,我想知道如果我想好好走下去,我都应该了解什么知识,比如都需要学会什么语言,学到什么程度,谢谢各位 解决方案 熟悉JAVA语言,现在44%的开发者使用的是java语言,16%多的人使用的四C#,13%多点的人使用的是C语言. 如果你也想从事java开发的话,数据库也很重要.大学应该讲的是MySql吧!数据库的增删改.

程序员周末都喜欢做什么?

程序员周末都喜欢做什么?在公司加班?在家里加班?看电影?睡觉?程序员都怎么找女朋友?百分之八十的程序员表示,女朋友是啥,有好基友就够了.程序员都去哪些网站呢?嘿嘿嘿... https://yqfile.alicdn.com/e0169e2adae952181083845c4662d4fad478b69d.png" > 文章转载自 开源中国社区 [http://www.oschina.net]

PHP程序员不应该忽略的3点_php技巧

最近发现很多的PHP程序员,尤其是学习还不是很久的,都不知道PHP的精华所在.Perl当年如何在商界出名?其强大的正则表达式.而PHP呢?他是一门从Unix下发展起来的语言,当然也就继承了Perl的很多特点,同时C的优点都有.快速.简洁.明了,尤其是C程序员,PHP是至爱.这里,我想来写一篇PHP的变量.数组应用技巧和PHP的正则表达式.PHP的模板应用. 1.变量.数组的应用技巧 (1)很多人用得不多的数组函数.foreach.list.each.分别举几个例子,应该就能知道了.例: $dat

程序员是否都要面对“换语言即淘汰”

昨天回复了一封来信,发表为博文<并不是所有软件开发人员都能高薪>,他的回信钩起了需要深入的另一个纠结人的话题. [来信] 谢谢贺老师!让你睡不着表示歉意. 其实我只想一句话来表达对贺老师回复的谢意,但我也想表达下我的想法. 如果贺老师有时间的话,可以看一看. 我填写大学志愿的时候,填写的是计算机应用专业,后来被安排了生物工程,05年生物工程属热门专业,但09年毕业后,大部分的同学要么考研要么从事其它行业. 当初上大学,是由我父亲决定的,我也就读完了.我自己觉得,之所以读这个专业, 一是我刚好属

十二星座的“程序员”,都是怎么写代码的?

白羊座 怎么可能看到一整段白羊座程序员写的完整代码!他们的电脑里大概存了三万多个文档,都是极其美妙的开头,然后呢?然后就没有然后了!人说金鱼的记忆只有7秒,白羊座程序员对一段新代码的热情大概只有25.7142857条金鱼那么长吧. 金牛座 金牛座程序员写起代码来那真叫一个惜代码如金,清晰,简洁,毫不拖泥带水,没有半句废话.啥?注释?还要啥自行车啊这位同学!写注释多废纸啊! 双子座 双子座程序员自带多套互不干扰.独立运行的代码编写系统,代码编写风格切换起来毫无障碍,单看他心里哪个小人揍趴下了其他小

java程序员 你们都写静态页 样式什么的么?

问题描述 一天经常改静态页样式什么的也学不到什么3GWEB开发都是简单的功能是不是该走了? 解决方案 解决方案二:现在做的多数是JavaEE,你做的基本上不能实现自己的人生价值了解决方案三:引用1楼jialoveqiqi的回复: 现在做的多数是JavaEE,你做的基本上不能实现自己的人生价值了 也是j2eessh等等只不过是简单些没什么复杂的功能没劲想走解决方案四:东西要自己平时多学点..这样你才会变得强大..解决方案五:你到底是3G还是WEB开发互有借鉴的东西都是解决方案六:其实3G也是很不错

编程必备,程序员应该都知道的7款文本编辑器

简评:正如一个作家需要一个文字处理器来写故事,一个艺术家需要画布来创作,同样的,如果想编程,你会需要一个地方来写代码.程序员在哪里编写代码?最常见的就是使用文本编辑器了吧.下文列出了 7 个主流的文本编辑器,不出意外的话,开发人员应该都有所了解,至少听说过.7款文本编辑器,总有一款会适合你. 1.Sublime 2 & 3 Sublime Text 是许多开发人员日常使用的经典文本编辑器,可用于包括 Windows.Mac.Linux 等多个平台.不过虽然可以不购买许可证免费使用,但不时会有弹窗