一般foreach用的比較多
復制代碼代碼如下:
<?php
$price=array('apple'=>10,'orange'=>20,'banner'=>30);
foreach($price as $key=>$value)
{
echo $key.'=>'.$value.'<br>';
}
echo '<br>';
?>
還有個更高級和常見的方法
復制代碼代碼如下:
<?php
$shuiguo=array('apple'=>10,'orange'=>20,'banner'=>30);
while(list($changpin,$jiage)=each($shuiguo))
{
echo "$changpin=>$jiage".'<br>';
}
?>
以前還真沒怎么關(guān)注下,今天自己動手,還不錯,又了解新的東西了,還是自己太菜了,哎
list()函數(shù)可以用來一個數(shù)組分解成一系列的值,允許為新變量命名。不懂list的點擊這里
兩段代碼輸出是一樣。
需要注意的是,當使用each()函數(shù)時候,數(shù)組將記錄當前元素。如果希望在相同的腳本中使用兩次該數(shù)組。就需要使用reset()降當前元素重新設(shè)置到數(shù)組開始處。
復制代碼代碼如下:
<?php
$price=array('apple'=>10,'orange'=>20,'banner'=>30);
foreach($price as $key=>$value)
{
echo $key.'=>'.$value.'<br>';
}
echo '<br>';
reset($price);
while(list($key,$value)=each($price))
{
echo "$key=>$value","<br>";
}
?>
這樣就可以依然使用數(shù)組$price咯。
書上有的,作為新手的我,自己動手,敲下看看效果,理解下,寫個帖子,方便以后忘記了看看,說的比較膚淺,語言表達不好,見笑了。
復制代碼代碼如下:
<?php
/*
*PHP中的循環(huán)語句學習筆記
*一.while循環(huán)
if(表達式)
只執(zhí)行一次一條語句。
while(表達式){
反復執(zhí)行這個循環(huán)體;
}
*二.do-while循環(huán)
*三.for循環(huán)
*根據(jù)循環(huán)條件不同有兩種類型的循環(huán)
*一種:計數(shù)循環(huán) for
*另外一種:條件型循環(huán) while do-while //foreach
*幾個和循環(huán)有關(guān)的語句
*break;//可以用于流程控制和循環(huán)體,跳出循環(huán)。
continue;//只能用于循環(huán)體,退出本次循環(huán)。 exit;
return;
*寫循環(huán)盡量不要超過三層。
*循環(huán)的流程控制語句盡量不要超過五層。
*/
$num=0;
while($num<100){
echo "這是執(zhí)行第 {$num} 次輸出的結(jié)果<br>";
$num++;
}
//
echo '<table border="1" width="800"
align="center">';
echo '<caption><h1>使用一個while循環(huán)輸
出的表格</h1></caption>';
$i=0;
while($i<1000){
if($i%10==0){
if($i%20==0){
$bg="#ffffff";
}else{
$bg="#cccccc";
}
echo '<tr
onmouseover="lrow(this)" onmouseout="drow
(this)" bgColor="'.$bg.'">';
}
echo '<td>'.$i.'</td>';
$i++;
if($i%10==0){
echo '</tr>';
}
}
echo '</table>';
//
$i=0;
do{
echo "$i :this is do*while <br>";
$i++;
}while($i<10);
//
for(初始化的條件;條件表達式;增量){
循環(huán)體;
}
/*
do-while循環(huán)就是先執(zhí)行一次代碼,然后判斷,而
while循環(huán)就是先判斷,如果為true就繼續(xù)循環(huán),為
false就不循環(huán)。
*/
//九九乘法表
for($i=1; $i<=9; $i++){
for($j=1; $j<=$i; $j++){
echo "$j x $i =
".$j*$i." ";
}
echo '<br>';