1、基本数据类型、运算符,PHP基础,PHP的常量和变量,PHP的常量类型 PHP的常量包含两种:一种是系统预定义常量,另一种是自定义常量。 PHP中预定了很多系统常量,这些系统常量可以很好地帮助我们了解系统当前的情况,而且这些常量可以随时调用。具体列举如下:,PHP的常量和变量,PHP的常量类型 1、_FILE_ 这个默认常量是 PHP 程序文件名。若引用文件 (include 或 require)则在引用文件内的该常量为引用文件名,而不是引用它的文件名。 2、_LINE_ 这个默认常量是 PHP 程序行数。若引用文件 (include 或 require)则在引用文件内的该常量为引用文件的行,
2、而不是引用它的文件行。 3、PHP_VERSION 这个内建常量是 PHP 程序的版本,如 3.0.8-dev。 4、PHP_OS 这个内建常量指执行 PHP 解析器的操作系统名称,如 Linux。 5、TRUE 这个常量就是真值 (true)。,PHP的常量和变量,PHP的常量类型 6、FALSE 这个常量就是伪值 (false)。 7、E_ERROR 这个常量指到最近的错误处。 8、E_WARNING 这个常量指到最近的警告处。 9、E_PARSE 本常式为解析语法有潜在问题处。 10、E_NOTICE 这个常式为发生不寻常但不一定是错误处。例如存取一个不存在的变量。 这些 E_ 开头形式
3、的常量,可以参考 error_reporting() 函数,有更多的相关说明。,PHP的常量和变量,PHP的常量类型 define() 的功能可以让我们自行定义所需要的常量: define(“COPYRIGHT“, “Copyright ,PHP的常量和变量,PHP的变量类型 PHP中预先定义了很多变量,我们可以随时在脚本中引用。 自定义变量: PHP 的变量类型不多,有以下五种: string :字符串 integer :整型 double (floating point number):双精度型(浮点型) boolean : 布尔型 array :数组 object :对象,PHP的常量和
4、变量,PHP的变量类型 PHP的变量属于松散的数据类型,具体使用时应注意以下几点: 变量名要以“$”开头,且区分大小写; 变量不必要预先定义或声明; 变量在使用时编译器可动态进行类型指定和转换; 变量如果未赋值而直接使用,变量值将被视为空;,PHP的常量和变量,PHP的变量类型 1、字符串(string) 要指定字符串给字符串变量时,要在头尾都加上双引号或单引号 (例如: “这是字符串”或这是字符串)。而且在PHP中也提供一些转义字符,用以辅助那些已经被程序语法结构占用了的特殊字符,其列表如下:,PHP的常量和变量,PHP的变量类型 1、字符串(string),PHP的常量和变量,PHP的变量
5、类型 2、整型(integer): 在 32 位的操作系统中,它的有效范围是 -2,147,483,648 到 +2,147,483,647。要使用 8 进位整数可以在面加 0(零),要使用 16 进位整数可以在面加 0x。如: $int1=1234 /十进制正整数 $int1=-1234 /负整数 $int1=01234 /八进制整数 $int1=0x1234 /十六进制整数,PHP的常量和变量,PHP的变量类型 3、双精度型(浮点型)(double (floating point number)) 在 32 位的操作系统中,它的有效范围是 1.7E-308 到 1.7E+308。如: $f
6、loat1=666.66 $float2=6.6666e2 /表示6.6666乘以10的2次方,为指数形式的浮点数 应当注意的是,浮点型变量显示所用的十进制数的个数由php.ini文件中的precision定义,预定值为12,即浮点数的最长为14个数字。,PHP的常量和变量,PHP的变量类型 4、布尔型(boolean) 布尔型也就是逻辑型,其值非真即假,只要用于条件表达式和逻辑表达式中,用以控制程序流程。这种类型是从PHP4种才开始存在的。通常 1 即为 true,0 为 false。 要明示地将一个值转换成 boolean,用 (bool) 或者 (boolean) 来强制转换。但是很多情
7、况下不需要用强制转换,因为当运算符,函数或者流程控制需要一个 boolean 参数时,该值会被自动转换。,PHP的常量和变量,PHP的变量类型 例:PHP变量的使用=字符串、整型、浮点型、布尔型,PHP的常量和变量,PHP的变量类型 5、数组(array) 数组变量可以是一维、二维或者更多维数组,其中的元素也很自由,可以是字符串、整型、浮点型、布尔型,甚至是数组或则对象。PHP还同时支持以数字为下标的索引数组(scalar array)和以字符串为下标的关联数组(associative array),这二者虽没有任何区别,但也算得上是PHP比别的语言特别的地方之一吧!在PHP中可以使用list
8、()函数或者array()函数来创建数组,也可以直接进行赋值。,PHP的常量和变量,PHP的变量类型 5、数组(array) 用array()函数创建数组的方法如下例: 用array()函数创建PHP数组 逐一给数组元素赋值 数组元素简洁赋值-,PHP的常量和变量,PHP的变量类型 5、数组(array) PHP中多维数组与一维数组的区别在于多维数组有两个或多个下标,他们的用法基本上是一样的。下面的例子就是采用逐一给二维数组元素赋值的方法来创建和使用二维数组的。,PHP的常量和变量,PHP的变量类型 5、数组(array) 多维数组的逐一赋值法 用嵌套的array()函数创建PHP数组,PHP
9、的常量和变量,PHP的变量类型 6、对象(object) object 为对象类型变量,目前在 PHP 中的默认类并不是太多。,运算符,算术运算符 赋值运算符 位运算符 比较运算符 错误控制运算符 逻辑运算符 字符串运算符 运算符优先级 (以括号控制),算术运算符,还记得学校里学到的基本数学知识吗?就和它们一样。,/ $a+ 表示先给表达式赋值,然后$a的值自加1,所以,表达式为$a原值。 除号(“/”)总是返回浮点数,即使两个运算数是整数(或由字符串转换成的整数)也是这样。,赋值运算符,基本的赋值运算符是“=”。你一开始可能会以为它是“等于”,其实不是的。它实际上意味着把右边表达式的值赋给左
10、运算数。 赋值运算表达式的值也就是所赋的值。也就是说,“$a = 3”的值是 3。这样就可以使你做一些小技巧: $a = ($b = 4) + 5; / $a 的值为9,同时也将 $b 的值设置为 4.,在基本赋值运算符之外,还有适合于所有二元算术和字符串运算符的“组和运算符”,这可以让你在一个表达式中使用它的值并把表达式的结果赋给它,例如: $a = 3; $a += 5; / 等效于$a=$a+5 $a-=5; $a*=5; $b = “Hello ”; $b .= “There!”; / 等效于 $b = $b . “There!“;,比较运算符,错误控制运算符,PHP 支持一个错误控制
11、运算符:。当将其放置在一个 PHP 表达式之前,该表达式可能产生的任何错误信息都被忽略掉。下面代码会出错误: ,在表达式之前,加上,将错误忽略掉。又如,打开文件的函数file(),在使用时也可加上: ,逻辑运算符,字符串运算符,有两个字符串运算符。第一个是连接运算符(“.”),它返回其左右参数连接后的字符串。第二个是连接赋值运算符(“.=”),它将右边参数附加到左边的参数后。更多信息见赋值运算符。$a = “Hello “; $b = $a . “World!“; / “Hello World!“ $a = “Hello “; $a .= “World!“; / “Hello World!“,
12、流程控制,任何 PHP 脚本都是由一系列语句构成的。一条语句可以是一个赋 值语句,一函数调用,一个循环,甚至一个什么也不做的(空语 句)条件语句。语句通常以分号结束。此外,还可以用花括号将一 组语句封装成一个语句组。语句组本身可以当作是一行语句。本章 讲述了各种语句类型。 条件语句 选择语句 循环语句 break和continue return,条件语句,条件语句的格式:if(条件1) /代码 elseif(条件2) /代码 else /代码 蓝色、绿色 部分可省略。,if ($a $b) print “”; if ($a $b) print “”; $b = $a; if ($a $b) p
13、rint “我们”; else print “大家”; if ($a =1) print “一”; else if($a=2) print “二”; else if($a=3) print “三”; |else print “未进前三”; ,循环语句,while 循环是 PHP 中最简单的循环类型,while 语句的基本格式是: while (expr) statement; while 语句的含意很简单,它告诉 PHP 只要while 表达式的值为 TRUE 就重复执行嵌套中的循环语句。如果 while 表达式的值一开始就是 FALSE,则循环语句一次都不会执行。 for 循环是 PHP 中
14、最复杂的循环结构。for 循环的语法是: for (expr1; expr2; expr3) statement; ,foreach循环 PHP 4(不是 PHP 3)包括了 foreach 结构,和 Perl 以及其他语言很像。这只是一种遍历数组简便方法。foreach 仅能用于数组 foreach (array_expression as $value) statement foreach (array_expression as $key = $value) statement,选择语句,switch 语句和具有同样表达式的一系列的 IF 语句相似。很多场合下需要把同一个变量(或表达式)
15、与很多不同的值比较,并根据它等于哪个值来执行不同的代码。这正是 switch 语句的用途。 ?php if ($i = 0) print “i equals 0“; elseif ($i = 1) print “i equals 1“; elseif ($i = 2) print “i equals 2“; ,switch ($i) case 0: print “i equals 0“; break; case 1: print “i equals 1“; break; default: print “i equals 2“; break; ?,break和continue,break 结束当前 for,foreach,while,dowhile 或者 switch 结构的执行。 continue 在循环结构用用来跳过本次循环中剩余的代码并开始执行下一次循环。 n“; ,while (list ($key, $value) = each ($arr) if (!($key % 2) / 略过本次循环 continue; do_something_odd ($value); ?,return,如果在全局范围中调用,则当前脚本文件中止运行。 如果在一个函数中调用,return() 语句立即结束此函数的执行并将它的参数作为函数的值返回。结果:aaa, 结果:aaa,