总述:三种循环语句和两种专门便利数组的语句
1.1 while循环语句
while循环语句是PHP中最简单的循环语句,它的语法格式为:while(expr){ },当表达式expr的值为真时,将执行statement语句,执行结束之后,在返回到expr表达式继续进行判断,当表达式值为假时,跳出循环,执行下面的语句。
$num = 1;
$str = "100 以内的偶数为:";
while($num <= 100){
if($num % 2 == 0){
$str .= $num." ";
}
$num ++;
}
echo $str.'<p>';
1.2 do...while循环语句
while语句还有另一种形式表达,即:do...while。两者的区别在于,do...while要比while语句多循环一次。
$num1 = 1;
$str1 = "100 以内的奇数有:";
do{
if($num1 % 2 != 0){
$str1 .= $num1." ";
}
$num1 ++;
}while($num1<=100);
echo $str1.'<p>';
1.3 for循环语句
for循环是PHP中最复杂的循环结构,它的语法格式为:for(expr1;expr2;expr3){ }
echo "循环打印100以内的数字:";
for($i=0;$i<=100;$i++){
echo "$i ";
}
echo '<p>';
1.4 foreach循环语句
foreach循环是PHP4引进来的,只能用于数组,在PHP5中,又增加了对对象的支持,该语句的语法格式为:foreach($array as $value){ } 或者 foreach($array as $key=>$value){ },这种类似于OC中for(id in NSArray){ }一样的方法。
//数组循环
echo '傻威的外号有多少?答:';
$array = array("1"=>"刘伟","2"=>"傻威","3"=>"二威","4"=>"逗比威");
echo count($array).' 个,分别为:';
foreach($array as $key=>$value){
echo $key=$value.' ';
}
echo '<p>';
//数组排序---简单排序算法
$array1 = array(0=>21,1=>33,2=>34,3=>1,4=>98,5=>78,6=>12,7=>9,8=>3,9=>54);
for($i=0;$i<count($array1);$i++){
for($j=$i+1;$j<count($array1);$j++){
if($array1[$i]<$array1[$j]){
$tmpe = $array1[$i];
$array1[$i] = $array1[$j];
$array1[$j] = $tmpe;
}
}
}
echo '数组排序--简单排序输出:';
foreach($array1 as $key=>$value){
echo $value.' ';
}
echo '<p>';
1.5 list输出数组以及向数组中增加元素和删除元素以及删除相同的元素
直接看代码吧:
//使用list输出数组
echo '使用list输出数组:';
while(list($name,$value1)=each($array1)){
echo $value1.' ';
}
echo '<p>';
echo 'PHP二维数组的个数count($array2,递归统计):';
$array2 = array(array('PHP1','php2','php3'),array('asp1'));
echo count($array2,COUNT_RECURSIVE).'<p>';
//查找数组中的元素
$key1 = array_search(21,$array2);
if($key1){
echo '查找函数到了<br>';
}else{
echo '没有查找到<br>';
}
//获取数组中最后一个元素,并将数组的长度减去1(点评:类似于删除啊?)
$arr = array_pop($array1);
echo "\$array1的最后一个元素为:$arr".'<br>';
print_r($array1);
echo '<br>使用array_push函数向数组中增加一个元素:';
array_push($array1,$arr);
print_r($array1);
echo "<br>删除数组中的重复元素<br>未删除之前的数组:";
array_push($array1, 54);
print_r($array1);
$array3 = array_unique($array1);
echo "<br>删除之后";
print_r($array3);