460 likes | 638 Views
第 6 章 PHP 程序设计语言. 主要内容 Php 语言概述 Php 语言变量、数据类型、运算符、表达式 Php 语言数组 Php 语言函数 Php 语言控制语句. 6.1PHP 程序设计语言概述. 6.1.1PHP 程序设计语言基础 PHP 程序在服务器端负责处理从网页文件( htm 文件)采用 POST 或 GET 方式传入的数据. 6.1PHP 程序设计语言概述. 6.1.2PHP 网页程序格式 phpecho.php <?php //PHP 程序开始 ?> //PHP 程序结束 <html> <head>
E N D
第6章 PHP程序设计语言 主要内容 Php语言概述 Php语言变量、数据类型、运算符、表达式 Php语言数组 Php语言函数 Php语言控制语句
6.1PHP程序设计语言概述 6.1.1PHP程序设计语言基础 PHP程序在服务器端负责处理从网页文件(htm文件)采用POST或GET方式传入的数据
6.1PHP程序设计语言概述 6.1.2PHP网页程序格式phpecho.php <?php //PHP程序开始 ?> //PHP程序结束 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>无标题文档</title> </head> <body bgcolor="#FFFF00"> <?php //php开始标记 echo “欢迎访问网络图书销售系统!”; ?> //php结束标记 </body> </html>
6.1.3PHP网页程序的标记 <?phpxxxxxxx?> <script language=“php”>xxxxxxxx</script> 6.1PHP程序设计语言概述
6.1PHP程序设计语言概述 6.1.4PHP网页程序注释命令 • HTML文件注释命令:<! xxxxxxxx > • PHP文件注释命令:一行注释 // xxxxxx 多行注释 /* xxxxxxxxxx yyyyyyyy */
6.1PHP程序设计语言概述 6.1.5PHP网页程序的规范 • Php语句必须写在php头和php尾之间。 • 一条php语句必须以分号;结束。 • 一行可以写多条php语句。
6.2PHP语言的变量、数据类型、运算符、表达式 6.2.1PHP语言的变量 1.变量名 “量”是计算机中内存的存储空间。“量”中的内容可以改变的叫“变量”,不可以改变的叫“常量”。 给可以改变内容的内存空间(变量)起一个名字,该名字叫变量名,可以通过该变量名读写变量内容。 变量名命名规则:第一个符号必须是$,第二个字符可以是字母或下划线,第三个字符开始可以一是字母、下划线、数字。$xm, $_id, $sfzh
6.2PHP语言的变量、数据类型、运算符、表达式 6.2.1PHP语言的变量 2.变量值 变量里的内容就是变量的值。值得来源可以是直接赋予,或通过程序处理得到。值有类型之分。字符型、数值型、逻辑型、日期型。 给变量赋值格式: 变量名=表达式,将表达式的结果赋给变量。 $book_name=“计算机应用基础” 赋值常量 $nl=12+6 赋值一个表达式 $va=$nl-8 赋值一个变量表达式 $csrq=“1980-01-28” 赋值一个日期型数据
6.2PHP语言的变量、数据类型、运算符、表达式 6.2.1PHP语言的变量 3.预定义变量 PHP的系统内部变量。
6.2PHP语言的变量、数据类型、运算符、表达式 6.2.2PHP语言的数据类型welcome.php 1.整型 数值型数据,包括正整数、负整数 有效范围:-2147483648~+2147483647 2.浮点型 数值型数据,包括正数、负数、小数 有效范围:比整型大,小数精度也高 浮点型表示格式:x=±aE±n 将12345用浮点形式赋值给vx vx=1.2345E+04
6.2PHP语言的变量、数据类型、运算符、表达式 6.2.2PHP语言的数据类型welcome.php 不同进制的数值 十进制:$var_d=12345 十六进制0x:$var_h=0x7F 八进制0:$var_o=074
6.2PHP语言的变量、数据类型、运算符、表达式 6.2.2PHP语言的数据类型welcome.php 3.字符型 用于表示文字信息。字符型内容必须使用定界符一对双引号“”,或一对单引号‘’。 $gm=“中国” $sm=‘北京’ $gmsm=$gm.$sm (中国北京) $welcome=“欢迎你到中国,欢迎你到北京” $wc=“欢迎你到$gm,”.”欢迎你到$sm”
6.2PHP语言的变量、数据类型、运算符、表达式 6.2.2PHP语言的数据类型welcome.php 3.转意符\ 转意符“\”可以将特殊字符的含义取消,作为普通字符输出。 特殊字符包括:“”,‘’,$,\,*,;,/ $gongzi=3000; 输出“工资=3000” echo “工资=”. $gongzi 输出“工资变量$gongzi值=3000” echo “工资变量$gongzi值=3000” 使用对$号转意符\ echo “工资变量\$gongzi值=3000” 输出
6.2PHP语言的变量、数据类型、运算符、表达式 6.2.2PHP语言的数据类型welcome.php 4.布尔型(逻辑型) 逻辑值真true(实际值1) 逻辑值假false(实际值0) $婚否=true
6.2PHP语言的变量、数据类型、运算符、表达式 6.2.3PHP语言的运算符operator.php 1.算术运算符 +加, -减, *乘, /除, %取模(余数), **幂运算 优先级从左到右,由低到高,可以使用()括号强制改变优先级。1+2*3,(1+2)*3 2.逻辑运算符(用于组合条件) ==全等,not非,and与,or或,xor异或 查询条件是“女教授”。性别=“女” and 职称=“教授” 3.组合赋值运算 +=自加,-=自减,*=自乘,/=自除,%=自取余,.=自连接
6.2PHP语言的变量、数据类型、运算符、表达式 6.2.4PHP语言的表达式formule.php 1.”赋值“格式:变量名=表达式(值) 一行多赋值语句 $guojia=“中国”;$chengshi=“北京”; 赋表达式语句 $dizhi=$guojia.$chengshi; 多变量赋值语句 $vn=$vm=1000; 2.算术表达式 $gz=12-8*5; 3.字符表达式(“.”字符串连接符号) $di=$guojia.$chengshi;
6.3PHP语言的数组 6.3.1数组的定义matrice.php 数组是带有下表的变量组。可以定义1维数组和多维数组。 数组定义格式: 一维数组。$数组名[n];数组元素个数=n。下标值变化从0到n-1。 二维数组。$数组名[n][m]。数组元素个数=nxm。第一个下标变化从0到n-1。第二个下标变化从0到m-1。 例题:$ma[5];$mb2[3][2];
6.3PHP语言的数组 6.3.2数组元素的初始化matrice.php 1.使用赋值语句定义数组并赋初值 格式:$数组名[下标]=表达式(值) 例题:$mc[0]=123;$mc[1]=“abc”;$mc[2]=456; 注:数组下标可以是一个变量。
6.3PHP语言的数组 6.3.2数组元素的初始化matrice.php 2.使用array函数定义数组并赋初值 格式:$数组名=array(值1,值2,,值n) 例题: $city=array(”北京”,”上海”,”南京”)定义了一个一维3个元素的数组。 $dt=array(array(4,6,7),array(9,3,5));定义了一个二维6个元素的数组。
6.3PHP语言的数组 6.3.2数组元素的初始化matrice.php 3.使用变量作为数组下标 格式:$数组名[变量1][变量2]=表达式(值) 例题: $city=array(”北京”,”上海”,”南京”)定义了一个一维3个元素的数组。 $i=0; $vc=$city[$i];echo $vc; $i+=1; $vc=$city[$i];echo $vc;
6.3PHP语言的数组 6.3.3数组操作函数matrice.php 1.显示数组值 格式:print_r(数组变量名) 例题:print_r($city); 2.计算数组元素个数 格式:count(数组变量名) 例题:count($dt); 3.计算数组元素值的总和 格式:array_sum(数组变量名) 例题:array_sum($md);
6.3PHP语言的数组 6.3.3数组操作函数matrice.php 4.对数组元素按照值的大小进行升序排序 格式:asort(数组变量名) 例题:asort($city); 5.对数组元素按照值的大小进行降序排序 格式:rsort(数组变量名) 例题:rsort($city); 6.对数组元素随意排列 格式:shuffle(数组变量名) 例题:shuffle($city);
6.4PHP语言的函数 6.4.1系统内置函数function.php 1.显示函数 格式:echo表达式表。输出结果不中断程序。 例题:echo 123,”abc”.”def”,456+4; 2.显示中断函数 格式:die (表达式表)。输出结果中断程序。 例题:die (“abc”.”edfg”); 3.嵌入文件(将嵌入文件和当前文件合并成一个文件) 格式:include文件名 例题:include “matrice.php”
6.4PHP语言的函数 6.4.2判断变量类型函数function.php 1.返回变量类型和值 格式:var_dump(变量名) 例题:$vn=20;var_dump($vn);$ct=“ab”;var_dump($ct); 2.判断变量是否是数值型,返回结果是逻辑值。 格式:is_numeric (变量名) 例题:is_numeric ($vn); 3.判断变量是否是浮点型,返回结果是逻辑值。 格式:is_float(变量名) 例题:is_float($vn);
6.4PHP语言的函数 6.4.2判断变量类型函数function.php 4.判断变量是否是字符串类型 格式:is_string(变量名) 例题:$vn=20;is_string($vn);$ct=“ab”;is_string($ct); 5.判断变量是否是布尔(bool)型,返回结果是逻辑值。 格式:is_bool (变量名) 例题:$vb=true;is_bool ($vb);$vn=20;is_bool($vn); 6.判断变量是否是数组型,返回结果是逻辑值。 格式:is_array(变量名) 例题:is_array($ma);is_array($vb);
6.4PHP语言的函数 6.4.2判断变量类型函数function.php 7.判断变量是否被设置定义 格式:isset(变量名) 例题:$vn=20;isset($vn);isset($cc); 8.判断变量是否为空值,返回结果是逻辑值。 格式:empty (变量名) 例题:$vn=20;empty($vn);empty($ve);
6.4PHP语言的函数 6.4.3字符操作函数function.php 1.计算机字符串的字符个数,返回结果是一个数值。 格式:strlen(字符型变量名) 例题:$vse=“ab”;strlen($vse); $vsc=“中国”; strlen($vsc); 2.比较字符串函数,返回结果是逻辑值。-1,s1<s2, 0,s1=s2, 1 s1>s2。 格式:strcmp (字符串变量名1,字符串变量名2) 例题:$stc1=“teacher”;$stc2=“teacher”;Strcmp($stc1,$stc2); $stc2=“Teacher”;strcmp($stc1,$stc2); Strcmp($stc2,$stc1);
6.4PHP语言的函数 6.4.3字符操作函数function.php 3.截取字符串函数 格式:substr(字符串,起始位置,截取长度) 例题:$vse=“abcdefghij”; $vst=substr($vse,4,3); $vst的结果是字符串def 4.计算$st2在$st1中出现的次数,返回结果是数值。 格式:substr_count ($st1,$st2) 例题:$st1=“abcdecdfgh”;$st2=“cd”; $vnc=substr_count($st1,$st2);$vnc的结果为2。
6.4PHP语言的函数 6.4.3字符操作函数function.php 5.计算字符串$st2在字符串$st1中出现的位置从0开始 格式:strpos($st1,$st2) 例题:$st1=“abcdefghij”;$st2=“def”; $vsp=strpos($st1,$st2); $vsp的结果是3。 6.从$st1中匹配$st2的位置开始截取,返回结果是字符串。 格式:strstr ($st1,$st2) 例题:$st1=“zhs1959@yahoo.cn”;$st2=“@”; $vns=strstr($st1,$st2);$vns的结果为@yahoo.cn。
6.4PHP语言的函数 6.4.3字符操作函数function.php 7.压缩字符串前后的空格,返回结果为一个字符串。 格式:trim(字符串变量) 例题:$st1=“ ab cde ”; $vst=trim($st1); $vst的结果是”ab cd”。 8.将西文转换为小写,返回结果是字符串。 格式:strtolower (字符变量名) 例题:$st1=“Teache”; $vnl=strtolower($st1);$vnl的结果为”teacher”。 9.将西文转换为大写,返回结果为字符串。 格式:strtoupper($st1);
6.4PHP语言的函数 6.4.4日期操作函数function.php 1.获取当前的时间戳,从1970年1月1日0时0分0秒到当前的总秒数。 格式:time() 例题:$vt=time();$vt是一个秒数。 2.检测日期数据的有效性,返回结果是逻辑值。 格式:checkdate (月,日,年) 例题:checkdate(12,03,1978); 3.获取日期和时间 格式:date(显示格式,时间戳) 例题:date(“Y-m-d H:i:s”);返回当前日期。 date(“Y-m-d H:i:s”,time()-5*86400);返回5天前的日期。
6.4PHP语言的函数 6.4.5自定义函数function.php 函数定义: Function函数名(形式参数表){ xxxxxxx Return返回值 } 函数调用: $vr=函数名(实际参数表) 注:定义在先,调用在后。
6.4PHP语言的函数 6.4.5自定义函数function.php 例题: Functionjiou($n){ If ($n%2==0) return ”偶数”; Else return ”奇数”; } $m=17; Echo “<br>$m”.”是“.jiou($m);
6.5PHP语言的控制语句 6.5.1顺序结构的语句program.php 排在前头的先执行,排在后头的后执行。 程序1 $a=10; $b=20; $c=$a+$b; 程序2 $c=$e+$d; $e=10; $d=20;
6.5PHP语言的控制语句 6.5.2分支结构的语句program.php 1.单分支结构语句 格式: If (条件表达式){ 语句组; } 例题:$id保存身份证号,如果身份证号长度小于18,显示错误提示。 $id=“110102197809210465”; If (strlen($id<>18) echo “身份证号长度不等于18”;
6.5PHP语言的控制语句 6.5.2分支结构的语句program.php 2.双分支结构语句 格式: If (条件表达式){ 语句组1; } else{ 语句组2 } 例题:$gz保存职工工资,$zc保存的职工职称,教授涨10元,其他人涨20元。 $gz=1000;$zc=“教授”; If ($zc==“教授”){$gz=$gz+10;} else {$gz=$gz+20;}
6.5PHP语言的控制语句 6.5.2分支结构的语句program.php 3.多双分支结构语句 格式: switch (条件表达式){ case值1: 语句组1 break; case值2: 语句组2 break; case值i: 语句组i break; default: 语句组n break; }
6.5PHP语言的控制语句 6.5.2分支结构的语句program.php 3.多双分支结构例题:教授涨10元,副教授涨20元,讲师涨30元,其他人涨40元。$zc变量保存的是职称,$gz变量保存的是工资 格式: switch ($zc){ case “教授”: $gz=$gz+10; break; case “副教授”: $gz=$gz+20; break; case “讲师”: $gz=$gz+30; break; default: $gz=$gz+40; break; }
6.5PHP语言的控制语句 6.5.3循环结构的语句program.php 1.For循环(变量循环)结构 格式: For (变量初值;循环条件;循环一次的增量(步长)){ 循环体语句组 } 例题:计算从1累加到100。取一个变量$vi从1变化到100,取另一个变量$sumi保存每次累加的结果。 $sumi=0; for ($vi=0;$vi<=100;$vi=$vi+1){ $sumi=$sumi+$vi; }
6.5PHP语言的控制语句 6.5.3循环结构的语句program.php 1.while循环(条件循环)结构 格式: while (条件表达式){ 循环体语句组 } 例题:计算从1乘到$n(阶乘)。指定一个变量$n, 再取一个变量$i从1变化到$n,取第三个变量$m保存每次乘的积。 $m=0;$i=1;$n=6; while ($i<=$n){ $m=$m*$i; $i=$i+1; }
6.5PHP语言的控制语句 6.5.3循环结构的语句program.php 1.do … while 循环(条件循环)结构 格式: Do { 循环体语句组 } while (条件表达式) 例题:给出一个数$n,判断该数是否是素数。给出一个变量$i从1变化到$n-1,如果$n能够整除$i,$n不是素数,否则$n是一个素数。 $i=1;$n=5; Do { if ($n%$i==0){ break; } $i=$i+1; }while ($i<$n); if ($i==$n) echo “$n是素数”; elseecho “$n不是素数”; return
6.5PHP语言的控制语句 Program.php 循环短路:立即回到循环头,继续下一次循环。 语法:continue 跳出循环:无条件结束循环,跳至循环后面的语句 语法:break continue和break应该与条件分支语句结合使用。
CONTINUE结合条件判断 下一张
continue结合条件判断 Program.php 语法: Do { 语句组一 If (continue条件){ continue;} 语句组二 } while (循环条件) 下一张
Break结合条件判断 下一张
Break结合条件判断 Program.php 语法: Do { 语句组一 If (Break条件){ break;} 语句组二 } while (循环条件) 返回