[PHP语言开发学习笔记] 二、PHP与C语言的一些想法和总结的一些区别
最近一段时间开始了php的系统学习,学习的过程中,深有感触的就是语言和语言之间其实很多地方是相通的。
读大学那会儿,大一大二老师在课堂上讲C语言,面对我们的没有漂亮的GUI开发环境,只有蓝底白字的Turbo C环境。那时候,我对C的认识就是开发鸡兔同笼的小玩意,殊不知C其实是各种复杂语言,不论是面向对象的还是面向过程的,不论是VB VC 还是PHP、JAVA、ASP的基础,它们其最根本的算法都是来源于C。
于是最近在我的linux环境下面 又一次打开了C环境,最近又一次开始把我压在书桌下面的大学课本C语言那出来做一次系统的复习和回顾。如果当时学习的时候知道这些,现在也不至于走这么多弯路。一个优秀的开发者,如果没有精通C,我觉得是无所作为的。最低层最更根本的算法,才是真的拿的出手的东西。
下面总结和看了一些关于PHP和C 的一些区别,挺有用,留下来作为笔记。
1.PHP包含文件使用require(”filename”);|C语言使用#include
2.PHP定义一个常量使用define(”PI”,”3.14″);|C语言使用define PI 3.14
3.PHP使用$作为变量的标志,而C语言不需要使用
4.PHP中的变量无须定义,可以直接使用,而C语言必须在使用前定义
5.PHP中可以使用gettype函数来取得变量的类型,C语言没有
6.PHP中使用settype来转换变量类型,C语言使用 (int) foo 的方式
7.PHP中定义函数需要使用function关键字,C语言不需要
8.PHP中的数组下标可以是字符串,C语言中必须为整数
9.PHP中使用array[] = “bar”定义某个数组元素,而C语言则定义了整个数组
10.PHP中数组可以随时插入删除,C语言中不允许,数组是不可变的
11.PHP中定义全局变量使用$GLOBALS[],C语言直接在函数外部定义
12.PHP中使用其它文件中的全局变量使用global关键字,C语言使用extern
13.PHP中有字符串运算符“.”,C语言中没有
其实PHP和C对信号的处理程序几乎是相同的。真的是这样,学好C,PHP就能很容易的无师自通了。那样在熟练的使用C的同时还可以自己编写PHP扩展,使PHP的应用范围更广,效率更高。
Linux和C就是学好PHP的基础。
从我一开始对Linux一窍不通,到现在的前过程全部使用linux,其实也是下了很大功夫和觉醒。虽然只是linux的起步阶段。ubuntu是入门,但目前我觉得FreeBSD和Redhat会成为我不久的目标。
在 Windows平台下使用PHP在工作,只是在php外面晃当。
那天看PHP的讲解视频,里面的老师讲:现在只知道如何使用却不知道原理的程序员实在是太多了。这样只能始终在编程的最外围游走,终日受累于各种工具和框架,这个现象并不 限于PHP,在Java,C#等编程语言里也同样存在。大量的工具和框架使程序员们不再专注于内在的原理,而是简单的包含和调用,一样也能完成工作。或许你认为这样也不错,那当然没问题。但是人各有志,相信还是有不少程序员是对程序背后的原理相当感兴趣的。其实并不只是兴趣这一个理由去研究原理,相反只有 了解了原理,才能更好的认识程序,知道程序为什么要这么写,深入浅出,写出更优秀的程序。想想看,当别人还在讨论表面问题时,你已经从操作系统的内核出发想出了最好的解决方法并且用坚实的理论依据说服同事们按照你的想法做的时候,你就已经是真正的高手了。
精通C、Linux从现在开始,什么时候都不算晚。
