php学习--3 流程控制语句,字符串操作

来源:互联网 发布:淘宝二级页面打不开 编辑:程序博客网 时间:2024/06/09 16:52

流程控制语句

if(expr1){    statement1;}else if(expr2){    statement2;}else{    statement3;}switch(variable){    case value1:    case value2:        statement_1_and_2;        break;    case value3:        statement3;        break;    default:        statement_default;}//若break换做continue,作用相同。

循环控制语句

while(expr){    statement;}do{    statement; //at least once}while(expr);for(expr1;expr2;expr3){    statement;//expr1 ->expr2? statement:break ->expr3}foreach(array_expr as value){//value为拷贝    statement;}foreach(array_expr as &value){}//value为引用,且只有当array可以引用时有效(array需为变量,array(1,2,3)就不可),并且最后一定要再foreach外unset($value),不然联接一直在。orforeach(array_expr as key => value){    statement;}another way :{ -> :} -> endname;foreach( ):statement;endforeach;

break/continue
break:终止当前的循环。跳出多层 break $num;

while(true){                     //loop 1    while(true){                 //loop 2        for($i = 0 ;i <=3 ;i++){ //loop 3            if($i == 2){                break 3;         //jump out of loop 1            }        }        echo "this is the second loop";// will not be executed    }}

continue:终止本次的循环,进入到下一次循环。也可跳出到多层的末尾,进入该层的下次循环。

$i = 0;while ($i++ < 2) {    echo "loop1\n";    while (1) {        echo "loop2<br />\n";        while (1) {            echo "loop3<br />\n";            continue 3;        }        echo "This never gets.<br />\n";    }    echo "Neither does this.<br />\n";}//loop1-loop2-loop3-loop1-loop2-loop3goto 语句目标位置只能位于同一个文件和作用域,无法跳入循环或者switch,但能用于跳出goto l;echo "world";l:echo "hello";//只会显示hello没有world

字符串操作

去除字符:trim():去除字符串首尾空格和特殊字符,并返回结果字符串。string trim(string str[,string charlist]);//str: 目标字符串//charlist: 要删除的字符(可选,不设置就默认全删) $str = "(:@abcd:)";$str = trim($str,"(:@:)");ltrim():去除左边的rtrim():去除右边的转义,还原字符串一般可以用 \ 进行转义。string addslashes(string str);//转义*****尤其数据库操作时,插入string stripslashes(string str);//复原对于给定的指定字符string addcslashes(string str,string charlist);string stripcslashes(string str);获取字符串的长度int strlen(string str);截取字符串string substr(string str,int start [,int length]);//从0开始//start:负值代表从倒数第几个开始,倒数没有第0个//length:负值代表截取到倒数第几个比较字符串按字节进行比较int strcmp(string str1,string str2);//区分大小写int strcasecmp(string str1,string str2);//不区分按自然排序法进行比较int strnatcmp(string str1,string str2);//将数字部分按大小比比较字符串的前n字符int strncmp(string str1,string2,int length);检索字符串sting strstr(string str,string a)//从str中检索a,返回str中从a开始到末尾的字符串,否则返回false$name = "picture.jpg";$name = strstr($name,".");echo $name;//".jpg"检索子串出现的次数int substr_count(string haystack,string needle);替换字符串mixed str_ireplace(mixed search,mixed replace,mixed subject [,int &count]);//将subject中的search替换成replace,替换次数为count,===不区分大小写。str_replace//区分大小写指定字符串中的部分字符串进行替换string substr_repalce(string str,string repl,int start,[int length]);格式化字符串a.四舍五入掉.后的小数部分(只剩整数,且整数每三位加 ,)b.小数后面留2位c. . 代替小数点d. . 代替每三位的 , number_format($num);//anumber_format($num,2);//a,bnumber_format($num,2,'.','.');//a,b,c,d分割字符串array explode(string separator,string str [,int limit]);//limit代表返回最多的元素个数,若为负数,则返回除最后limit个元素外的所有元素。合成字符串string implode(string glue,array pieces);
0 0