PHP( PHP: Hypertext Preprocessor)是一种被广泛应用的开放源代码的多用途脚本语言, 对数据库操作功能强大,可以嵌入到HIML中,尤其适合WEB开发 621PHP的语法 1.PHP主要有以下特点: (1)良好的安全性 (2)跨平台特性 (3)易学性 (4)执行速度快 (5)免费 在学习PHP语法之前,先通过一个简单的PHP程序,来认识PHP程序的基本语法结构 及运行方式。首先,确定在系统中安装了PHP和 Apache服务器 实例6- hello程序:( hello. php) <head> title>php欢迎您< /title> <body> <?PHP echo"这是一个PHP脚本!";∥在浏览器中显示的文本 </body> </html 把 hello. php保存在web服务器目录,在浏览器地址栏中输入htp;∥2700. hello. php 或htp/ ocalhoat/hello. php,就可以浏览,如图6-14所示。 提示 默认情况下,PHP的web文件夹为/var/www/html/还要启动httpd进程,为了使PHP 程序能够正确执行,这个用户必须对这个文件夹有足够的权限 其中,<?php和?>之间嵌入的代码就是PHP语句,PHP程序中每行语句以分号结束或 结束标记(》>),结東标记同样隐含语句的结束:程序中echo语句是PHP中标准输出语句 用于向浏览器输出一串字符串;在浏览器中菜单上选择【查看】/【页面源代码】菜单命令, 可以看到PIP源程序经过PHP编译程序编译后送到浏览器端的是标准的HIML代码,如图 6-14所示,不显示原来PHP源程序,这就是PHP作为服务器端脚本语言与客户端脚本语言 JavaScript和 SCript最大区别 2.PHP分界符 用来标记PHP代码块的标记共有四套 <?php和?> <script language="PHP"> N </script> <?和 和
PHP(PHP: Hypertext Preprocessor)是一种被广泛应用的开放源代码的多用途脚本语言, 对数据库操作功能强大,可以嵌入到 HTML 中,尤其适合 WEB 开发。 6.2.1 PHP 的语法 1.PHP 主要有以下特点: (1)良好的安全性 (2)跨平台特性 (3)易学性 (4)执行速度快 (5)免费 在学习 PHP 语法之前,先通过一个简单的 PHP 程序,来认识 PHP 程序的基本语法结构 及运行方式。首先,确定在系统中安装了 PHP 和 Apache 服务器。 实例 6-1 hello 程序:(hello.php): <html> <head> <title>PHP 欢迎您</title> </head> <body> <?PHP echo "这是一个 PHP 脚本!"; //在浏览器中显示的文本 ?> </body> </html> 把 hello.php 保存在 Web 服务器目录,在浏览器地址栏中输入 http://127.0.0.1/hello.php 或 http://localhoat/hello.php,就可以浏览,如图 6-14 所示。 提示: 默认情况下,PHP 的 web 文件夹为 /var/www/html/ ,还要启动 httpd 进程,为了使 PHP 程序能够正确执行,这个用户必须对这个文件夹有足够的权限。 其中,<?php 和?>之间嵌入的代码就是 PHP 语句,PHP 程序中每行语句以分号结束或 结束标记(?>),结束标记同样隐含语句的结束;程序中 echo 语句是 PHP 中标准输出语句, 用于向浏览器输出一串字符串;在浏览器中菜单上选择【查看】/【页面源代码】菜单命令, 可以看到 PHP 源程序经过 PHP 编译程序编译后送到浏览器端的是标准的 HTML 代码,如图 6-14 所示,不显示原来 PHP 源程序,这就是 PHP 作为服务器端脚本语言与客户端脚本语言 JavaScript 和 VBScript 最大区别。 2.PHP 分界符 用来标记 PHP 代码块的标记共有四套: ⚫ <?php 和 ?> ⚫ <script language=”PHP”> 和 </script> ⚫ <? 和 ?> ⚫ <% 和 %>
其中前两套总是有效,后面两套可以在 php. ini配置文件中开启或者关闭。 3.PHP使用注释符 HP支持C,C++和 Unix shell3种风格的注释方式: 这是从C++语法中借鉴过来的,只能注释一行 这是C语言的注释符,可以注释多行 这是 UNIX SHELL风格的注释符,只能注释一行 4.PHP数据类型 (1)常量类型 PHP向它运行的任何脚本提供了大量的预定义常量。下面列举了几个系统常量 真假 PHP OS执行PHP解释程序的操作系统的名称,如图6-15所示 实例62 PHP OS程序(php0sphp) <head> <title>phP oS </title> <hhead> <? php echo PHP OS,?∥在浏览器中显示执行PHP解释程序的操作系统的名称 </body? 可以用 define函数来定义常量,如实例6-3所示,实例中省略了html的一些脚本 个常量一旦被定义,程序中就不允许再改变或者取消定义。 实例63常量定义程序( (define ph) define(PI,“3.14l (2)变量类型 PHP中一个美元符号($)后面跟上一个变量名称,即表示一个变量。变量的名称是对 大小写敏感的。PHP中变量则不需事先定义,直接使用即可。对于变量的类型,在赋值时 自动生成。PHP常用变量的类型分为:布尔型( boolean)、整数( Integer)、浮点型(foat)、 字符串( string)、数组(aray)、对象( object)、资源、NULL等 ①布尔型 这是最简单的类型。 boolean表达了真值,可以为TRUE或 FALSE。要指定一个布尔 值,使用关键字TRUE或 FALSE。两个都是大小写不敏感的。要明示地将一个值转换成 boolean,用(bool)或者( boolean)来强制转换。但是很多情况下不需要用强制转换,因 为当运算符、函数或者流程控制需要一个 boolean参数时,该值会被自动转换。定义方式如
其中前两套总是有效, 后面两套可以在 php.ini 配置文件中开启或者关闭。 3.PHP 使用注释符 PHP 支持 C,C++ 和 Unix Shell 3 种风格的注释方式: ⚫ // 这是从 C++语法中借鉴过来的,只能注释一行 ⚫ /* */ 这是 C 语言的注释符,可以注释多行 ⚫ # 这是 UNIX SHELL 风格的注释符,只能注释一行 4.PHP 数据类型 (1)常量类型 PHP 向它运行的任何脚本提供了大量的预定义常量。下面列举了几个系统常量: ⚫ True 真 ⚫ False 假 ⚫ PHP_OS 执行 PHP 解释程序的操作系统的名称,如图 6-15 所示 实例 6-2 PHP_OS 程序(php_os.php) <html> <head> <title>PHP_OS </title> </head> <body> <?php echo PHP_OS; ?> //在浏览器中显示执行 PHP 解释程序的操作系统的名称 </body> </html> 可以用 define() 函数来定义常量,如实例 6-3 所示,实例中省略了 html 的一些脚本。 一个常量一旦被定义,程序中就不允许再改变或者取消定义。 实例 6-3 常量定义程序(define.php) <?php define(PI , “3.1416”); echo PI; ?> (2)变量类型 PHP 中一个美元符号($)后面跟上一个变量名称,即表示一个变量。变量的名称是对 大小写敏感的。PHP 中变量则不需事先定义,直接使用即可。对于变量的类型,在赋值时 自动生成。PHP 常用变量的类型分为:布尔型(boolean)、整数(integer)、浮点型(float)、 字符串(string)、数组(array)、对象(object)、资源、NULL 等。 ① 布尔型 这是最简单的类型。boolean 表达了真值,可以为 TRUE 或 FALSE。要指定一个布尔 值,使用关键字 TRUE 或 FALSE。两个都是大小写不敏感的。要明示地将一个值转换成 boolean,用(bool)或者(boolean)来强制转换。但是很多情况下不需要用强制转换,因 为当运算符、函数或者流程控制需要一个 boolean 参数时,该值会被自动转换。定义方式如 下:
实例6-4布尔型变量定义程序( boolean. php) <? php sa=True少 ②整型 一个 Integer是集合Z={…,-2,-1,0,1,2,}中的一个数。整型值可以用十进制,十 六进制或八进制符号指定,前面可以加上可选的符号(-或者+)。如果用八进制符号,数字 前必须加上0,用十六进制符号数字前必须加上0x 实例65整型变量定义程序( integer;.php) <?php ∥进制数 b=-888 ∥个负数 sc=0127 ∥八进制数(等于十进制的87) Sd = OXDA ∥六进制数(等于十进制的218) ③浮点型 浮点数可以用以下任何语法定义 命实例66浮点型变量定义程序( float. ph) sc=8E-12 ④字符串 字符串是一系列字符。字符串可以用三种字面上的方法定义 单引号 指定一个简单字符串的最简单的方法是用单引号(")括起来。要表示一个单引号,需 要用反斜线(\)转义,和很多其他语言一样。如果在单引号之前或字符串结尾需要出现 个反斜线,需要用两个反斜线表示。注意如果你试图转义任何其他字符,反斜线本身也会被 显示出来!所以通常不需要转义反斜线本身 双引号 如果用双引号(")括起字符串,PHP有更多特殊字符的转义序列,如表6-1所示。 定界符 另一种给字符串定界的方法使用定界符语法(“<”)。应该在<<<之后提供一个标识 符,然后是字符串,然后是同样的标识符结束字符串。结束标识符必须从行的第一列开始 表6-1转义字符 序列 换行(LF或 AsCII字符0x0A(10)) 回车(CR或 ASCII字符0NOD(13) 水平制表符(HT或ASCⅡ字符0x09(9) 反斜线 美元符号
实例 6-4 布尔型变量定义程序(boolean.php) <?php $a = True; ?> ② 整型 一个 integer 是集合 Z = {..., -2, -1, 0, 1, 2, ...} 中的一个数。 整型值可以用十进制,十 六进制或八进制符号指定,前面可以加上可选的符号(-或者 +)。如果用八进制符号,数字 前必须加上 0,用十六进制符号数字前必须加上 0x。 实例 6-5 整型变量定义程序(integer.php) <?php $a = 9981; //十进制数 $b = -888; //一个负数 $c = 0127; //八进制数(等于十进制的 87) $d = 0xDA; //十六进制数(等于十进制的 218) ?> ③ 浮点型 浮点数可以用以下任何语法定义: 实例 6-6 浮点型变量定义程序(float.php) <?php $a = 4.567; $b = 1.2e3; $c = 8E-12; ?> ④ 字符串 字符串是一系列字符。字符串可以用三种字面上的方法定义。 ⚫ 单引号 指定一个简单字符串的最简单的方法是用单引号(')括起来。要表示一个单引号,需 要用反斜线(\)转义,和很多其他语言一样。如果在单引号之前或字符串结尾需要出现一 个反斜线,需要用两个反斜线表示。注意如果你试图转义任何其他字符,反斜线本身也会被 显示出来!所以通常不需要转义反斜线本身。 ⚫ 双引号 如果用双引号(")括起字符串,PHP 有更多特殊字符的转义序列,如表 6-1 所示。 ⚫ 定界符 另一种给字符串定界的方法使用定界符语法(“<<<”)。应该在 <<< 之后提供一个标识 符,然后是字符串,然后是同样的标识符结束字符串。结束标识符必须从行的第一列开始。 表 6-1 转义字符 序列 含义 \n 换行(LF 或 ASCII 字符 0x0A(10)) \r 回车(CR 或 ASCII 字符 0x0D(13)) \t 水平制表符(HT 或 ASCII 字符 0x09(9)) \\ 反斜线 \$ 美元符号 \" 双引号
此正则表达式序列匹配一个用八进制符号表示的字符 9A-Fa112}此正则表达式序列匹配一个用十六进制符号表示的字符 ⑤数组 可以用aayO语言结构来新建一个amay。它接受一定数量用逗号分隔的key= value 参数对,key可以是 Integer或者 string, value可以是任何值。 命实例67数组型变量定义程序( array, ph) Sarr=array (a"=>"good, 10=> true); echo Sarr["a"]; ∥good echo Sarr[10] ∥1 ⑥对象 对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它 不仅能表示具体的事物,还能表示抽象的规则、计划或事件。具有相同或相似性质的对象的 抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。要 初始化一个对象,用new语句将对象实例到一个变量中。 实例6-8对象定义程序( object. php) function do obj echo"Doing object. Sa=new obj Sb->do obj ⑦资源 一个资源是一个特殊变量,保存了到外部资源的一个引用。资源是通过专门的函数来建 立和使用的 ⑧NULL 特殊的NULL值表示一个变量没有值 5.PHP的运算符与表达式 (1)运算符 运算符是常量和变量之间的纽带PHP的运算符大部分是从C语言中借用而来的,不同 的运算符优先顺序也不同,如表6-2所示 ①算术运算符 算术运算符是用来处理四则运算的符号,这是最常用的符号,包括加法(+)、减法(-)、 乘法(*)、除法()、取模(%)等。 ②赋值运算符 基本的赋值运算符是=。把右边表达式的值赋给左边运算数。赋值运算表达式的值也就 是所赋的值,也就是说,$a=10的值是10。在基本赋值运算符之外,还有适合于所有二元算
\[0-7]{1,3} 此正则表达式序列匹配一个用八进制符号表示的字符 \x[0-9A-Fa-f]{1,2} 此正则表达式序列匹配一个用十六进制符号表示的字符 ⑤ 数组 可以用 array()语言结构来新建一个 array。它接受一定数量用逗号分隔的 key => value 参数对,key 可以是 integer 或者 string,value 可以是任何值。 实例 6-7 数组型变量定义程序(array.php) <?php $arr = array("a"=> "good",10 => true); echo $arr["a"]; // good echo $arr[10]; // 1 ?> ⑥ 对象 对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它 不仅能表示具体的事物,还能表示抽象的规则、计划或事件。具有相同或相似性质的对象的 抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。要 初始化一个对象,用 new 语句将对象实例到一个变量中。 实例 6-8 对象定义程序(object.php) <?php class obj { function do_obj() { echo "Doing object."; } } $a = new obj; $b->do_obj (); ?> ⑦ 资源 一个资源是一个特殊变量,保存了到外部资源的一个引用。资源是通过专门的函数来建 立和使用的。 ⑧ NULL 特殊的 NULL 值表示一个变量没有值。 5.PHP 的运算符与表达式 (1) 运算符 运算符是常量和变量之间的纽带 PHP 的运算符大部分是从 C 语言中借用而来的,不同 的运算符优先顺序也不同,如表 6-2 所示。 ① 算术运算符 算术运算符是用来处理四则运算的符号,这是最常用的符号,包括加法(+)、减法(-)、 乘法(*)、除法(/)、取模(%)等。 ② 赋值运算符 基本的赋值运算符是=。把右边表达式的值赋给左边运算数。赋值运算表达式的值也就 是所赋的值,也就是说,$a=10 的值是 10。在基本赋值运算符之外,还有适合于所有二元算
术运算符和字符串运算符的“组和运算符”,如+=、-=、*、/=、%和=等 ③字符串运符 有两个字符串运算符。第一个是连接运算符,就是英文的句号(),它返回其左右参数 连接后的字符串。第二个是连接赋值运算符= ④逻辑运算符 逻辑运算符通常用来测试真假值。常用于循环的判断条件中,判断是否跳出循环还是继 续执行循环的指令。 表6-3逻辑运算符 例子 结果 Sa and sb And(逻辑与)|TRUE,如果$a与$b都为TRUE Sa or Sb Or(逻辑或) TRUE,如果$a或$b任一为TRUE Sa xor sb Xor(逻辑异或)TRUE,如果$a或$b任一为TRUE,但不同时是 Not(逻辑非)TRUE,如果$a不为TRUE Sa & sb And(逻辑与)|TRUE,如果$a与b都为TRUE Sa ll Sb Or(逻辑或)TRUE,如果$a或Sb任一为TRUE ⑤比较运算符 比较运算符,就是对值进行比较。除了常见的二元运算外,还有运算符是?,称为三元 运算符,和C以及很多其他语言一样 表6-4比较运算符 例子 名称 结果 TRUE,如果sa等于$b。 Sa == Sb TRUE,如果sa等于$b,并且它们的类型也相同。适用于PHP4 Sa i= sb TRUE,如果Sa不等于$b sa∞>$b 不等 TRUE,如果sa不等于$b。 $a!=$b非全等TRUE,如果Sa不等于$b,或者它们的类型不同。适用于PHP4 Sa< sb TRUE,如果sa严格小于$b TRUE,如果Sa严格$b。 Sa<= sb 小于等于TRUE,如果Sa小于或者等于$b Sa > Sb 大于等于TRUE,如果$a大于或者等于$b 除了上述的一些运算符外,PHP还有位运算符、错误控制运算符、执行运算符、加一 减一运算符、数组运算符等。 (2)表达式 最基本的表达式形式是常量和变量,表达式是PHP最重要的组成部分,在PHP中,几 乎所写的任何东西都是一个表达式。当你键入$a=5,即将值5分配给变量$a。5是一个值为 5的表达式 PHP的流程控制 流程控制是程序设计中最重要的部分,因为计算机的优势就在于可以重复工作,PHP在 流程控制方面,和C语言类似的循环。 (1)条件控制语句
术运算符和字符串运算符的“组和运算符”,如+=、-=、*=、/=、%=和.=等。 ③ 字符串运符 有两个字符串运算符。第一个是连接运算符,就是英文的句号(.),它返回其左右参数 连接后的字符串。第二个是连接赋值运算符.=。 ④ 逻辑运算符 逻辑运算符通常用来测试真假值。常用于循环的判断条件中,判断是否跳出循环还是继 续执行循环的指令。 表 6-3 逻辑运算符 例子 名称 结果 $a and $b And(逻辑与) TRUE,如果$a 与$b 都为 TRUE $a or $b Or(逻辑或) TRUE,如果$a 或$b 任一为 TRUE $a xor $b Xor(逻辑异或) TRUE,如果$a 或$b 任一为 TRUE,但不同时是 ! $a Not(逻辑非) TRUE,如果$a 不为 TRUE $a && $b And(逻辑与) TRUE,如果$a 与$b 都为 TRUE $a || $b Or(逻辑或) TRUE,如果$a 或$b 任一为 TRUE ⑤ 比较运算符 比较运算符,就是对值进行比较。除了常见的二元运算外,还有运算符是?:,称为三元 运算符,和 C 以及很多其他语言一样。 表 6-4 比较运算符 例子 名称 结果 $a == $b 等于 TRUE,如果$a 等于$b。 $a === $b 全等 TRUE,如果$a 等于$b,并且它们的类型也相同。适用于 PHP 4 $a != $b 不等 TRUE,如果$a 不等于$b。 $a <> $b 不等 TRUE,如果$a 不等于$b。 $a !== $b 非全等 TRUE,如果$a 不等于$b,或者它们的类型不同。适用于 PHP 4 $a < $b 小与 TRUE,如果$a 严格小于$b。 $a > $b 大于 TRUE,如果$a 严格$b。 $a <= $b 小于等于 TRUE,如果$a 小于或者等于$b。 $a >= $b 大于等于 TRUE,如果$a 大于或者等于$b。 除了上述的一些运算符外,PHP 还有位运算符、错误控制运算符、执行运算符、加一/ 减一运算符、数组运算符等。 (2)表达式 最基本的表达式形式是常量和变量,表达式是 PHP 最重要的组成部分,在 PHP 中,几 乎所写的任何东西都是一个表达式。当你键入$a=5,即将值 5 分配给变量$a。5 是一个值为 5 的表达式。 6.PHP 的流程控制 流程控制是程序设计中最重要的部分,因为计算机的优势就在于可以重复工作,PHP 在 流程控制方面,和 C 语言类似的循环。 (1)条件控制语句