流程控制

来源:互联网 发布:温州管家婆软件 编辑:程序博客网 时间:2024/06/06 02:32

PHP流程控制一

单项分支

if(bool判断);

这里只写一句话有作用!

if(bool){

这里可以写多句话!

}

双向分支

if(bool判断){

如果为真则执行这里的语句,可以写多句;(注意如这里没有括号,则只能写一句话)

}else{

如果为假则执行这里的语句,可以写多句;(注意如这里没有括号,则只能写一句话)

}

多项分支              

if(bool判断){

代码A

}else if(bool判断){

代码B

}else if(bool判断){

代码C

}else if(bool判断){

代码D

}else{

代码E

}

switch case 语句:

switch(变量值){

case 值1:

执行1的代码;

//可选的break;【break,被选择后则不符合条件的代码不会被执行】;

case 值2:

执行2的代码;

//可选的break;

case 值3:

执行3的代码;

//可选的break;

default;【如果没有任何值匹配的情况下执行的代码】

}

巢状分支

if($a){

if($b){

if($c){

}else{

}

}else{

}

}else{

}

 函数:rand();随机产生一个区间的数值;

     mt_rand();产生更好的随机数,是rand 的四倍

rand(1,5);从数字1-5产生随机数;

mt_rand(1,5);从数字1-5产生更好的随机数;

pow(需要取得n次方的数字,n次方);

Example  pow(); 例子

<?php

var_dump
(pow(28)); // int(256)
echo pow(-120);   // 1
echo pow(00);     // 1

echo pow(-15.5);  // error

?>

Example  filesize(); 例子

<?php

// 输出类似:somefile.txt: 1024 bytes

$filename 'somefile.txt';
echo 
$filename ': ' filesize($filename) . ' bytes';

?>

Note: 因为 PHP 的整数类型是有符号的,并且大多数平台使用 32 位整数,filesize() 函数在碰到大于 2GB 的文件时可能会返回非预期的结果。对于 2GB 到 4GB 之间的文件通常可以使用 sprintf("%u", filesize($file)) 来克服此问题。


布尔型循环就是为真的时候执行,为假的时候停止

 NOTICE:

1、循环能够节约大量的代码,提高重用性质

2、循环,一定要有退出条件。

3、While循环中,在while循环之前必须对变量进行初始化;

 单层循环:

语法结构

 

Whilebool判断){                                                                                                        

    Echo '要循环的代码';  //可以是一条语句,也可以是多条语句;                                                                 

}

 

多层循环:

语法结构

 

Whilebool判断)

{     

while(bool判断){

第二层循环的代码;

}                                                                                                   

    第一层要循环的代码;                                                              

}

 

 NOTICE:

在循环里再套循环。一般循环,不会超过二层。



 

do { } while { }循环:

                  

for(expr1;expr2;expr3);计数型循环

expr1:初始化变量

 

expr2:退出条件

 

expr3:循环添加,自增自减等

 

例子:

 

1<?php2/* 例子 1 */34for ($i = 1; $i <= 10; $i++) {5    echo $i;6}78/* 例子2 */910for ($i = 1; ; $i++) {11    if ($i > 10) {12        break;13    }14    echo $i;15}1617/* 例子 3 */1819$i = 1;20for (;;) {21    if ($i > 10) {22        break;23    }24    echo $i;25    $i++;26}2728/* 例子 4 */3031for ($i = 1, $j = 0; $i <= 10; $j += $i, print $i, $i++);32
?>
 
当然,第一个例子看上去最正常(或者第四个),但用户可能会发现在 for 循环中用空的表达式在很多场合下会很方便。

 

语法:

每个表达式都可以为空或包括逗号分隔的多个表达式。表达式 expr2 中,所有用逗号分隔的表达式都会计算,但只取最后一个结果。expr2 为空意味着将无限循环下去(和 一样,PHP 认为其值为 TRUE)。

 

【重点】使用循环遍历数组:

count() — 计算数组中的单元数目或对象中的属性个数

 

扩展:

 

12扩展:3Php是它是解释型语言,它的效率相对较低。对于循环时的count每次都会count这样的话,效率很低。4我们可以将,统计到的数值,直接赋值给一个变量,判断这个变量就可以了,减少统计次数。5提前 $j 到前面6for($i=0,$j=count($aray);$i<$j;$i++){78  echo '金融跟每个人相关'.$array[$i].'<br>';910}

 

 

 

【重点】使用循环遍历目录:

首先需要掌握的函数有:

 

opendir   — 打开开一个目录,返回一个资源类型,如果成功则返回目录句柄的 resource,失败则返回 FALSE  并且报错  使用@抑错

  

Is_dir    — 判断给定的文件名是否是一个目录; 

    

Closedir  — 关闭目录,传入一个打开的目录资源

 

Readdir   —  NOTICE:填入一个已经用opendir打开的文件目录资源】

 

传进一个目录资源,返回打开的目录名称,读一次向下移动一次,读到目录的最后一个文件后,返回false

 

Count     — 可以统计数组当中的元素个数【此函数的别名:sizeof()

 



0 0
原创粉丝点击