适用于C开发人员的PHP


想想PHP的最简单方法就像解释C一样,您可以嵌入HTML文档中。这种语言本身就像C一样,除了非类型化的变量,大量内置Web特定的库,以及一切直接连接到您最喜欢的Web服务器。

语句和函数定义的语法应该很熟悉,只是变量总是以$开头,函数不需要单独的原型。

这里我们将在PHP和C中加入一些相似之处和不同之处

相似

  • 语法 - 一般来说,PHP语法与C中的相同:代码是空白不敏感的,语句以分号结束,函数调用具有相同的结构(my_function(expression1,expression2)),大括号({和})生成语句分成块。 PHP支持C和C ++风格的注释(/ /以及//),以及Perl和shell脚本风格(#)。

  • 运算符 - 赋值运算符(=,+ =, =等),布尔运算符( &&,||,!),比较运算符(<,>,<=,> =,==,!= )和基本算术运算符(+, - ,,/,%)都像PHP一样在PHP中运行。

  • 控制结构 - 基本的控制结构(if,switch,while,for)的行为与C中的一样,包括支持break和continue。 一个显着的区别是,PHP中的开关可以接受字符串作为个案标识符。

  • 函数名称 - 在阅读文档时,您会看到许多与C函数看起来相同的函数名称。

差异

  • 美元符号 - 所有变量均以前导$表示。 变量不需要在赋值之前声明,并且它们没有内在类型。

  • 类型 - PHP只有两种数字类型:整数(对应于C中的长整数)和双精度(对应于C中的双精度)。 字符串的长度是任意的。没有单独的字符类型。

  • 类型转换 - 类型在编译时不被检查,类型错误通常不会在运行时发生。 相反,变量和值会根据需要自动转换为各种类型。

  • 数组 - 数组的语法表面上类似于C的数组语法,但它们的实现完全不同。 它们实际上是关联数组或散列,索引可以是数字或字符串。他们不需要事先声明或分配。

  • 没有结构类型 - PHP中没有结构,部分原因是数组和对象类型在一起使它变得没有必要。 PHP数组的元素不需要是一致的类型。

  • 无指针 - 虽然无磁带变量具有类似的作用,但PHP中没有可用的指针。 PHP确实支持变量引用。您也可以在某种程度上模拟函数指针,因为函数名称可以存储在变量中,并通过使用变量而不是文字名称来调用。

  • 没有原型 - 只要定义可以在当前代码文件或包含文件中找到,就不需要在定义实现之前声明函数。

  • 内存管理 - PHP引擎实际上是一个垃圾收集环境(引用计数),并且在小脚本中不需要执行任何释放。 你应该自由地分配新的结构 - 比如新的字符串和对象实例。在PHP5中,可以为对象定义析构函数,但没有空闲或删除。在内存被回收之前,当最后一个对象的引用消失时调用析构函数。

  • 编译和链接 - PHP脚本没有单独的编译步骤。

  • 放纵 -作为一般事项,PHP是更宽容比C(特别是在它的类型系统)等将让你与新种错误脱身。 意外的结果比错误更常见。