简介:昨天介绍了php的基础语法,今天进入正题,主要内容有选择语句、循环、选择语句、数学函数、日期函数、字符串函数、自定义函数、数组的应用。一、选择语句:1 注意:选择结构只能选择一种情况。if(条件1){条件1成立时 ...
昨天介绍了php的基础语法,今天进入正题,主要内容有选择语句、循环、选择语句、数学函数、日期函数、字符串函数、自定义函数、数组的应用。一、选择语句:1 注意:选择结构只能选择一种情况。if(条件1){条件1成立时执行}elseif(条件2){条件2成立的时候执行}elseif(条件3){条件3成立的时候执行}.....elseif(条件n){条件n成立的时候执行}else{以上条件都不成立时执行。}2 switchswitch(条件){case val1:执行的动作;break;case val2:执行的动作;break;case val3:执行的动作;break;..........default:执行的动作;break;}在考虑效率的情况下推荐使用switch二、循环(3种)1 for2 while3 do...while1 for300 汉口火车站--》光谷广场起始点: 5:30终止点:23:00间隔: 2分钟动作:发车格式:for(起始条件;终止条件;步长值(间隔)){循环体(动作);}2 while起始条件while(条件){循环体步长}3 do...while起始条件do{循环体;步长}while(条件)4 continue break;continue:终止当此循环的循环体,执行下一次循环。break: 跳出循环,后边的循环都不执行。三、字符串函数函数:1 strlen 获取字符串长度。int strlen(string)2 str_repeat 字符串重复string str_repeat(string,int)3 substr 取得子字符串string substr(string,int,int)4 md5 加密(密码进行加密);string md5(string)5 strtolower 字符串中的大写转换成小写;string strtolower(string);6 strtoupper 字符串中的小写转换成大写;string strtoupper(string)7 ucfirst转换段落首字母大写。8 ucwords 转换单词首字母大写。9 strpos 返回一个字符串在另外一个字符串中第一次出现的位置。string strpos(父字符串,目标字符串)10 string str_replace("被替换的字符串","替换字符",原字符串);11 htmlspecialchars把预定义的字符转换成实体。格式:htmlspecialchars(string,转化样式)转化样式:ENT_COMPAT 默认,仅编码双引号。ENT_QUOTES 双引号和单引号都进行编码。ENT_NOQUOTES 不对任何引号进行编码。12 urlencode 编码url字符串。注意:对url地址进行编码,除了-_ 之外的所有非字母和数字的字符都将替换为%(两位16进制数).空格编码为+13 nl2br()在字符串中()位置换成html中的四、数学函数。1 rand();随机数在一定的范围内,必定出现一个值,这个范围内的值出现的可能性是相同的。2 ceil();进一取整;只有整数部分,返回值就是本身。3 floor() 取整数。五、日期函数;1 date :格式化日期。string date("格式"[,"时间戳"]);2 date_default_timezone_set(string 时区);设置时区Asia/Shanghai 中国时区date_default_timezone_set("Asia/Shanghai");3 time();获取unix时间戳。int time();4 strtotime();把任何标准的时间格式转换为unix时间戳。六、自定义函数:function funName(参数1,参数2,.....){函数体:return value;}函数只在调用时执行。调用作用域:函数内外的变量是不能相互使用。函数可以有默认值。参数传值,取传的值,如果没传值,将取默认值。七、数组:一维数组1 索引数组定义索引数组1>直接定义$数组名称[下标] = 值 ; 直接定义下标是从0开始的整数print_r(数组名称)打印数组结构。2>array关键字来定义:$数组名称 = array(val_1,val_2,val_3,val_4.....);//强调:下标从0开始,元素个数,下标最大的+12 关联数组:下标是字符串的数组;1》直接定义:2>array关键字定义:3 foreach循环 (关联和索引数组都可以遍历)foreach(数组名称 as $key=>$val){循环体}数组函数:1 count/sizeof 求数组元素个数。2 explode 切割字符串用固定的符号,结果是一个数组。3 join/implode 把数组连接成字符串。4 array_reverse 反转数组,返回还是数组。5 array_keys 返回由原数组下表构成的数组。6 array_values 返回值构成的数组;7 list 用一步操作给一组变量进行赋值。注意:把数组中的值赋给变量。8 array_diff($array1,$array2)数组1有而数组2没有的列出来。列出结果也是数组。9 array_pop 删除数组的最后一个元素。10 array_push 将一个或多个单元压入数组的末尾11 sort 对数组排序的。从小到大。 以下是代码$wea = "下雨";if($wea=="下雨"){echo "我去游泳!";}elseif($wea=="下雪"){echo "在家蹲着!";}elseif($wea=="晴天"){echo "在床上躺着!";}else{echo "出去溜达";}echo "<br>";$wea = "晴天";switch($wea){case "下雨":echo "我去游泳";break;case "下雪":echo "在家蹲着";break;case "晴天":echo "在床上躺着";break;default:echo "出去溜达";break;}echo "<br>";$x=2;//$x=$x+1;//echo $x;//echo "<br>";//$x++;=>$x=$x+1;$x--;echo $x;//$x+=n =>$x=$x+n$y = 7;$y+=7;echo $y;/*-=*=/=%=*/echo "<br>------------for----------<br>";/*1循环到底怎么执行2 $i 怎么变化的3 循环完成后 $i 是多少。*//*for的执行过程;起始条件 终止条件 循环体 步长变化$i=0$i<=5 t 输出0 换行$i++=>$i=$i+1=1;------上一次循环的结果 就是下一次的开始$i=1$i<=5 t 输出1 换行$i++ 2$i=2 $i<=5 t 输出2 换行$i++ 3$i=3 $i<=5 t 输出3 换行$i++ 4$i=4 $i<=5 t 输出4 换行$i++ 5$i=5 $i<=5 t 输出5 换行$i++ 6$i=6 $i<=5 F跳出循环$i??????=6*/for($i=0;$i<=5;$i++){echo $i."<br>";}echo "<br>";//循环控制html 3*3echo "<table align="center" border="1">";for($m=0;$m<3;$m++){echo "<tr>";for($n=0;$n<3;$n++){echo "<td>";echo $m;echo "---";echo $n;echo "</td>";}echo "</tr>";}echo "</table>";/*起始条件 终止条件 循环体 步长变化$m=0$m<3<tr>起始条件 终止 循环体步长$n=0$n<3<td>0---0</td>$n++$n=1$n<3<td>0---1</td>$n++$n=2$n<3<td>0---2</td>$n++$n=3$n<3 f 跳出内</tr>$m++ =1$m=1$m<3<tr>起始条件 终止 循环体步长$n=0$n<3<td>1---0</td>$n++$n=1$n<3<td>1---1</td>$n++$n=2$n<3<td>1---2</td>$n++$n=3$n<3 f 跳出内</tr>$m++ =2$m=2$m<3<tr>起始条件 终止 循环体步长$n=0$n<3<td>2---0</td>$n++$n=1$n<3<td>2---1</td>$n++$n=2$n<3<td>2---2</td>$n++$n=3$n<3 f 跳出内</tr>$m++ =3$m=2$m<3 f 跳出循环*/echo "<br>---9*9----<br>";//9*9for($a=1;$a<=9;$a++){$s= 0;for($b=1;$b<=$a;$b++){$s=$a*$b;echo $a."*".$b."=".$s."  ";}echo "<br>";}echo "<br>---while----<br>";$k=0;while($k<6){echo $k."<br>";$k++;}echo $k;/*起始条件 终止条件 循环体 步长变化用while打印9*9表*/echo "<br>---do....while----<br>";$f = 11;do{echo $f."<br>";$f++;}while($f<=5);echo $f;/*起始条件 循环体步长 终止条件$f=00换行 $f++=1$f<=5 t$f=11换行 $f++=2$f<=5 t$f=22换行 $f++=3$f<=5 t$f=33换行 $f++=4$f<=5 t$f=44换行 $f++=5$f<=5 t$f=55换行 $f++=6$f<=5 f 跳出do...while 100*100*/echo "<br>---continue----<br>";$p=0;while($p<6){if($p==3){$p++;//continue;break;}echo $p."<br>";$p++;}/*起始条件 终止条件 循环体 步长变化$p=0$p<=5 t 输出0 换行$p++=>$p=$p+1=1;------上一次循环的结果 就是下一次的开始$p=1$p<=5 t 输出1 换行$p++ 2$p=2 $p<=5 t 输出2 换行$p++ 3$p=3 $p<=5 t $p==3 $p++=4 break; 后边不在执行。*/echo "<br>---strlen----<br>";$userName = "反对萨打点滴";echo strlen($userName);echo "<br>---str_repeat----<br>";$userPwd = "abc";$str1 = str_repeat($userPwd,5);echo $str1;echo "<br>---substr----<br>";$str2 = "abcdefghijklmnopq";/* 0 1 2 3 4-3 -2 -1*/$str3 = substr($str2,-8,3);echo $str3;echo "<br>---md5----<br>";$str4 = "zhangsan";$str5 = md5($str4);echo $str5;echo "<br>---strtolower----<br>";$str6 = "abCDEFghijKLM";$str7 = strtolower($str6);echo $str7;echo "<br>---strtoupper----<br>";$str8 = "abCDEFghijKLM";$str9 = strtoupper($str8);echo $str9;echo "<br>---strpos----<br>";$str10 = "abcdefghijeklmn";$str11 = "e";$str12 = strpos($str10,$str11);echo $str12;echo "<br>---str_replace----<br>";$str13 = "abcdef共产党gheijeklmen";$str14 = str_replace("共产党","***",$str13);echo $str14;echo "<br>---htmlspecialchars----<br>";$str15 = "you & "me" >aaaa<";echo htmlspecialchars($str15,ENT_QUOTES);echo "<br>---urlencode----<br>";$str16 = "http://www.baidu.com/tieba.c*ar s.cn";$str17 = urlencode($str16);echo $str17;echo "<br>---nl2br----<br>";$str18 = "aaaaaaaabbbbbbb";echo nl2br($str18);echo "<br>---rand()----<br>";$int1 = rand(1000,9999);echo $int1;echo "<br>---ceil()----<br>";$int2 = 5.0;$int3 = ceil($int2); //返回值:函数作用完的结果。echo $int3;echo "<br>---floor()----<br>";$int4 = 4.7;$int5 = floor($int4); //返回值:函数作用完的结果。echo $int5;echo "<br>---date()----<br>";date_default_timezone_set("Asia/Shanghai");$dt = date("Y-m-d H:i:s");echo $dt;echo "<br>---time()----<br>";$tim = time();echo $tim."<br>";$tim5 = $tim-5*24*3600;echo $tim5."<br>";echo date("Y-m-d H:i:s",$tim5); 时间戳函数的使用 echo "<br>-------<br>";$dt2 = date("Y-m-d H:i:s");echo $dt2."<br>";$st2 = strtotime($dt2);echo $st2."<br>";$st3 = $st2 - 365*24*3600;$dt3 = date("Y-m-d H:i:s",$st3);echo $dt3."<br>";echo "<br>----自定义函数---<br>";echo "<br>----从0打到n---<br>";function echoInt($n){for($i=0;$i<=$n;$i++){echo $i."<br>";}}$m=10;echoInt($m);//调用自定义函数echo "<br>----从0+到n---<br>";从0输出到定义数字 $sum = 0;for($j=0;$j<=8;$j++){$sum = $sum+$j;}echo $sum;/* 程序执行原理如下起始条件 终止条件 循环体 步长变化$j=0 $j<=8 $sum=0+0 =0 $j++=1$j=1$j<=8$sum=0+1=1$j++=2$j=2$j<=8$sum=1+2=3$j++=3$j=3$j<=8$sum=3+3=6$j++=4$j=4$j<=8$sum=6+4=10$j++=5$j=5$j<=8$sum=10+5=15$j++=6$j=6$j<=8$sum=15+6=21$j++=7$j=7$j<=8$sum=21+7=28$j++=8$j=8$j<=8$sum=28+8=36$j++=9$j=9$j<=8 F 跳出循环*/echo "<br>----打印---<br>";function addN($n=10){$sum = 0;for($j=0;$j<=$n;$j++){$sum += $j;}return $sum;//返回值;}$a=100;$totalSum = 3 * addN();echo $totalSum;echo "<br>----任意数的乘法表---<br>";//作业1function CName($n=9){for($i=1;$i<=$n;$i++){$su = 1;for($j=1;$j<=$i;$j++){$su = $i*$j;echo $i."*".$j."=".$su." ";}echo "<br>";}}$t = 9;CName($t);自定义函数实现九九乘法表 //__FILE__echo "<br>----__FILE__---<br>";echo __FILE__."<br>";echo basename(__FILE__)."<br>";echo dirname(__FILE__)."<br>";//5次。function getExtName($url){$fileName = basename($url);$pointer = strpos($fileName,".");$extName = substr($fileName,$pointer+1);return $extName;}$fileUrl = "http://www.freemoban.com/aa.html";//当前文件的路径;$extName = getExtName($fileUrl);echo $extName;echo "<br>--------------索引数组-----------------<br>";$user[0] = "张三";$user[1] = "男";$user[2] = 12;$user[3] = "这个人太懒";print_r($user);echo $user[1];echo "<br>";$arr = array("张三","男",12,"这个人太懒");print_r($arr);echo $arr[3];//强调:下标从0开始,元素个数,下标最大的+1echo "<br>--------------关联数组-----------------<br>";$brr["bookName"] = "php培训入门";$brr["bookAuthor"] = "pigmb";$brr["markPrice"] = 31.2;$brr["vipPrice"] = 38;print_r($brr);echo $brr["markPrice"];echo "<br>--------------关联数组array关键字-----------------<br>";$crr = array("bookName"=>"php培训入门","bookAuthor"=>"pigmb","markPrice"=>31.2,"vipPrice"=>38,);print_r($crr);echo "<br>--------------------foreach---------------------------<br>";// key 下标 val 值//$crr[$key]<===>$val//代码+执行过程 5次foreach($crr as $key=>$val){echo $key."-->".$crr[$key]."-->".$val."<br>";}/*起始条件 终止条件 循环体 步长的变化$key->第一个元素下标bookName存在php培训入门$key->第二个元素bookAuthor$key->第二个元素bookAuthor存在"pigmb"$key->第三个元素markPrice$key->第三个元素markPrice存在31$key->第四个元素markPrice$key->第四个元素vipPrice存在38$key->第五个元素$key->第五个元素不存在 跳出。*/echo "<br>--------------------数组函数---------------------------<br>";echo "<br>--------------------count/sizeof---------------------------<br>";$drr = array("bookName"=>"php培训入门","bookAuthor"=>"pigmb","markPrice"=>31,"vipPrice"=>38,);echo sizeof($drr);echo "<br>--------------------explode---------------------------<br>";$strings = "aaaa#bbb#ccc#ddd";$mrr = explode("#",$strings);print_r($mrr);echo $mrr[1];echo "<br>--------------------join---------------------------<br>";$trr = array("bookName"=>"php培训入门","bookAuthor"=>"pigmb","markPrice"=>31,"vipPrice"=>38,);echo join("#",$trr);echo "<br>--------------------array_reverse---------------------------<br>";$wrr = array("bookName"=>"php培训入门","bookAuthor"=>"pigmb","markPrice"=>31,"vipPrice"=>38,);print_r($wrr);echo "<br>";$qrr = array_reverse($wrr);print_r($qrr);echo "<br>--------------------array_keys---------------------------<br>";$yrr = array("bookName"=>"php培训入门","bookAuthor"=>"pigmb","markPrice"=>31,"vipPrice"=>38,);$urr = array_keys($yrr);print_r($urr);echo "<br>--------------------array_values---------------------------<br>";$zrr = array("bookName"=>"php培训入门","bookAuthor"=>"pigmb","markPrice"=>31,"vipPrice"=>38,);$vrr = array_values($zrr);print_r($vrr);echo "<br>--------------------list---------------------------<br>";$info = array("张三","男","128");list(,,$userWeight1) = $info;echo $userName1."<br>";echo $userSex1."<br>";echo $userWeight1."<br>";echo "<br>--------------------array_diff---------------------------<br>";$array1 = array("a" => "green", "red", "blue", "red","black");$array2 = array("b" => "green", "yellow", "red","pink");$result = array_diff($array1, $array2);print_r($result);echo "<br>--------------------array_pop---------------------------<br>";$stack = array("orange", "banana", "apple", "raspberry");$fruit = array_pop($stack);print_r($stack);echo "<br>--------------------array_push---------------------------<br>";$stack1 = array("orange", "banana");array_push($stack1, "apple", "raspberry", "apple", "raspberry");print_r($stack1);echo "<br>--------------------sort---------------------------<br>";$numArr = array(0,25,12,38,57);sort($numArr);print_r($numArr);今天介绍的知识点比较多,都是非常常见的,有兴趣的朋友一定要多看看函数的作用。本文仅代表作者个人观点,不代表巅云官方发声,对观点有疑义请先联系作者本人进行修改,若内容非法请联系平台管理员,邮箱2522407257@qq.com。更多相关资讯,请到巅云www.rzxsoft.cn学习互联网营销技术请到巅云建站www.rzxsoft.cn。 |