- PHP教程
- PHP-主页
- PHP - 简介
- PHP-环境设置
- PHP - 语法概述
- PHP - 变量类型
- PHP - 常量
- PHP - 运算符类型
- PHP - 决策
- PHP - 循环类型
- PHP-数组
- PHP-字符串
- PHP - 网络概念
- PHP - 获取和发布
- PHP - 文件包含
- PHP - 文件和 I/O
- PHP - 函数
- PHP-Cookie
- PHP-会话
- PHP - 发送电子邮件
- PHP-文件上传
- PHP - 编码标准
- 高级PHP
- PHP - 预定义变量
- PHP-正则表达式
- PHP - 错误处理
- PHP - 错误调试
- PHP - 日期和时间
- PHP 和 MySQL
- PHP 和 AJAX
- PHP 和 XML
- PHP——面向对象
- PHP - 面向 C 开发人员
- PHP - 适合 PERL 开发人员
- PHP 表单示例
- PHP-表单介绍
- PHP - 验证示例
- PHP - 完整表格
- PHP框架作品
- PHP-框架工程
- PHP - 核心 PHP 与 Frame Works
- PHP 设计模式
- PHP - 设计模式
- PHP 函数参考
- PHP - 内置函数
- PHP 有用资源
- PHP - 问题与解答
- PHP - 有用的资源
- PHP - 讨论
PHP 面向 PERL 开发人员
本章将列出 PHP 和 PERL 之间的主要相似点和不同点。这将帮助 PERL 开发人员非常快速地理解 PHP 并避免常见错误。
相似之处
编译脚本语言- Perl 和 PHP 都是脚本语言。这意味着它们不用于在执行之前生成本机独立可执行文件。
语法- PHP 的基本语法与 Perl 的基本语法非常接近,并且两者与 C 共享许多语法功能。代码对空格不敏感,语句以分号终止,花括号将多个语句组织到一个块中。函数调用以函数名称开头,后面是括在括号中并用逗号分隔的实际参数。
美元符号变量- PHP 中的所有变量看起来都像 Perl 中的标量变量:名称前面带有美元符号 ($)。
无需声明变量- 与 Perl 一样,在使用 PHP 变量之前不需要声明它的类型。
变量的松散类型- 与 Perl 一样,PHP 中的变量除了它们当前持有的值之外没有内在类型。您可以将数字或字符串存储在同一类型的变量中。
字符串和变量插值- PHP 和 Perl 对双引号字符串(“string”)的解释多于对单引号字符串(“string”)的解释。
差异
PHP 是 HTML 嵌入的- 尽管可以通过从命令行运行 PHP 来执行任意任务,但它更通常连接到 Web 服务器并用于生成网页。如果您习惯于用 Perl 编写 CGI 脚本,那么 PHP 的主要区别在于您不再需要使用 print 或 Heredoc 语句显式打印大块静态 HTML,而只需在 PHP 代码块之外编写 HTML 本身。
没有 @ 或 % 变量- PHP 只有一种变量,以美元符号 ($) 开头。语言中的任何数据类型都可以存储在此类变量中,无论是标量还是复合变量。
数组与散列- PHP 有一种称为数组的数据类型,它在 Perl 中扮演散列和数组/列表的角色。
指定函数的参数- PHP 中的函数调用看起来非常像 Perl 中的子例程调用。另一方面,PHP 中的函数定义通常需要某种形式参数列表,如 C 或 Java 中的形式参数列表,这不是 PERL 中的 CSSE。
函数中的变量作用域- 在 Perl 中,变量的默认作用域是全局的。这意味着顶级变量在子例程内可见。通常,这会导致跨函数混杂使用全局变量。在 PHP 中,函数定义中的变量范围默认是局部的。
没有这样的模块系统- 在 PHP 中,普通代码文件和用作导入库的代码文件之间没有真正的区别。
Break 和 continue 而不是 next 和 last - PHP 更像是 C 语言,使用break 和 continue 而不是 next 和 last 语句。
没有 elsif - 一个细微的拼写差异:Perl 的 elsif 是 PHP 的 elseif。
更多种类的注释- 除了 Perl 风格 (#) 单行注释之外,PHP 还提供 C 风格多行注释 (/* comment */ ) 和 Java 风格单行注释 (// comment)。
正则表达式- PHP 没有特定于正则表达式的内置语法,但在其“Perl 兼容”正则表达式函数中具有大部分相同的功能。