foreach循環語句php
『壹』 關於php中foreach循環,應該怎麼寫
<div class="main"> <ul class="list"> <?php foreach ($rates as $key => $rate) { foreach ($rate['info'] as $rate) { echo '<li> <!--這里循環調用一個圖片--> <div class="pic"> <a href="#" style="background:url('.$pic300.') top no-repeat;"></a> </div> <!--這里循環調用一個圖片結束--> <div class="pl"> <div class="pl_box"> <div class="pl_t">看看大家都在說什麼...</div> <div class="pl">
<?php $respl = $this->db->....();//取出評論的記錄集
<?php foreach($respl as $item):?> <!--這里循環調用三條評論--> <div class="pl_nr"> <p class="nr">'.$item'</p> </div> <!--這里循環調用三條評論結束-->
<?php endforeach;?> </div> </div> </div> </li>'; } } ?> </ul> <ul class="av"> <!--這里循環調用一張圖片--> <li> <a href="#" target="_blank" style="background:url('.$pic80.') no-repeat;"></a> </li> <!--這里循環調用一張圖片結束--> </ul></div>
『貳』 PHP的循環語句是什麼
在我們編寫代碼時,經常需要反復運行同一代碼塊。
我們可以使用循環來執行這樣的任務,而不是在腳本中添加若干幾乎相等的代碼行。
在 PHP 中,有以下循環語句:
while- 只要指定條件為真,則循環代碼塊
do...while- 先執行一次代碼塊,然後只要指定條件為真則重復循環
for- 循環代碼塊指定次數
foreach- 遍歷數組中的每個元素並循環代碼塊
PHP while 循環
只要指定的條件為真,while 循環就會執行代碼塊。
語法
while (條件為真) {
要執行的代碼;
}
下例首先把變數 $x 設置為 1($x=1)。然後執行 while 循環,只要 $x 小於或等於 5。循環每運行一次,$x 將遞增 1:
實例
<?php
$x=1;
while($x<=5) {
echo "這個數字是:$x <br>";
$x++;
}
?>
PHP do...while 循環
do...while 循環首先會執行一次代碼塊,然後檢查條件,如果指定條件為真,則重復循環。
語法
do {
要執行的代碼;
} while (條件為真);
下面的例子首先把變數 $x 設置為 1($x=1)。然後,do while 循環輸出一段字元串,然後對變數 $x 遞增 1。隨後對條件進行檢查($x 是否小於或等於 5)。只要 $x 小於或等於 5,循環將會繼續運行:
實例
<?php
$x=1;
do {
echo "這個數字是:$x <br>";
$x++;
} while ($x<=5);
?>
請注意,do while 循環只在執行循環內的語句之後才對條件進行測試。這意味著 do while 循環至少會執行一次語句,即使條件測試在第一次就失敗了。
下面的例子把 $x 設置為 6,然後運行循環,隨後對條件進行檢查:
<?php
$x=6;
do {
echo "這個數字是:$x <br>";
$x++;
} while ($x<=5);
?>
PHP for 循環
如果您已經提前確定腳本運行的次數,可以使用 for 循環。
語法
for (init counter; test counter; increment counter) {
code to be executed;
}
參數:
init counter:初始化循環計數器的值
test counter:: 評估每個循環迭代。如果值為 TRUE,繼續循環。如果它的值為 FALSE,循環結束。
increment counter:增加循環計數器的值
下面的例子顯示了從 0 到 10 的數字:
實例
<?php
for ($x=0; $x<=10; $x++) {
echo "數字是:$x <br>";
}
?>
PHP foreach 循環
foreach 循環只適用於數組,並用於遍歷數組中的每個鍵/值對。
語法
foreach ($array as $value) {
code to be executed;
}
每進行一次循環迭代,當前數組元素的值就會被賦值給 $value 變數,並且數組指針會逐一地移動,直到到達最後一個數組元素。
下面的例子演示的循環將輸出給定數組($colors)的值:
實例
<?php
$colors = array("red","green","blue","yellow");
foreach ($colors as $value) {
echo "$value <br>";
}
?>
『叄』 php foreach 循環
sql語句放在循環裡面這種是不提倡的,你可以把要插入的數據轉換成數組用sql循環插入,至於為什麼第一次列印出來有值後面就是NULL。你可以試試在foreach外面聲明一個變數例如$data = '';在到循環裡面拼接字元串$data .= $data; 然後在列印$data。看看是不是$result數組裡面的值就是空的。
『肆』 PHP foreach 嵌套循環
第二個foreach 中的局部變數已經覆蓋了第一個foreach 中的 $key,
第二個跟第一個第二個都不會影響,因為屬於第一個foreach之外,所有的foreach 循環中產生的變數均是臨時變數,退出循環時就會被銷毀,所以第三個不會受第一個第二個影響,
把你的第二個foreach 中的$key 換個變數名就不會覆蓋了,
『伍』 PHP中foreach循環的用法
foreach($array as $key=>$value){ echo $key.' is '.$value; } ps: $array 為要遍歷的數組 $key 為遍歷的數組下標 $key 為遍歷的數組的值
希望採納
『陸』 php foreach 用法
樓主你的問題我也遇到過
這是為什麼呢?
$a
=
array("1"=>"語文","2"=>"數學","3"=>"英語");
上面這個和下面這個是完全一樣的
$a[1]="語文";
$a[2]="數學"
$a[3]=「英語」
樓主我們輸出上面的數組是怎麼輸出的呢?
肯定是echo
$a[1];
對不對?
如果沒有疑問我們繼續!!!!
------------------------------
不知道foreach樓主有沒有完全理解
他的格式是這樣的foreach(數組名
as
下標=>值)
下標也就是上面的$a[1],這里的1就是數組的下標!
到這你應該明白了,為什麼是$a[$key]這樣輸出
你記住不管怎麼變,數組的輸出方法永遠是$a[1],不會是$a['語文']
『柒』 php foreach 循環求教
大致明白你的意思了,
function getFlone($parentid){ //建立回調函數每次讀取目錄
$sql="select * from abccc where parentid={$parentid} order by categoryid";
$rs=mysql_query($sql);
$data=array();
while ($row=mysql_fetch_array($rs)){
$data[]=$row;
}
return $data;
}
function getFlmenu($parentid){
$arr=getFlone($parentid);
foreach ($arr as &$v) { //遍歷$arr最外層數組
if(getFlone( $v['parentid'])){ //判斷$v['parentid']是否有子目錄
$arr.=getFlmenu($v['parentid']); //如果有子目錄調用則再次調用getFlmenu函數進行回調並將每一級目錄($arr數組表示的)用「.」號連起來,方便你到時候用explode()函數分割
return $arr;
}else{
return $arr; //如果$v['parentid']下面沒有子目錄,具體顯示效果你自己可以定義
}
}
}
『捌』 php中foreach循環怎麼用
foreach($arr as $k=>$v){ //這里的$arr就是數組, $k是數組的鍵, $v是數組的值
echo $k; //輸出鍵
echo $v; //輸出值
}
『玖』 php中foreach循環語句 如何使用
$conn=mysql_connect("localhost","root","");
mysql_select_db("test");
mysql_query("set names utf8",$conn);
$result=mysql_query("select * from tb_messages");
$result=mysql_query($sql_excel);
while($arr = mysql_fetch_assoc($result)){
$content[]=$arr;
}
$table = '<table>';
$table .= '<thead><tr><th>id</th><th>標題</th><th>電話</th><th>地址</th><th>審核狀態</th><th>內容</th><th>留言時間</th></thead>';
$table .= '<tbody>';
foreach($content as $key=>$value){
$table .= "<tr>";
$table .= "<td>".$value['id'].'</td>';
$table .= "<td>".$value['title'].'</td>';
$table .= "<td>".$value['phone'].'</td>';
$table .= "<td>".$value['address'].'</td>';
$table .= "<td>".$value['ischeck'].'</td>';
$table .= "<td>".$value['content'].'</td>';
$table .= "<td>".substr($value['datetime'],0,11).'</td>';
$table .= '</tr>';
}
$table .= '</tbody>';
$table .= '</table>';
echo $table;
『拾』 PHP中foreach函數用法
foreach()兩種用:
1:
foreach(array_name
as
$value)
{
statement;
}
array_name要遍歷數組名每循環array_name數組前元素值賦給$value,並且數組內部標向移步循環元素
2:foreach(array_name
as
$key
=>
$value)
{
statement;
}
跟第種區別$key,除前元素值賦給$value外前元素鍵值每循環賦給變數$key鍵值標值字元串比book[0]=10book[id]="001"id.