導航:首頁 > 編程語言 > phpwhile循環數組

phpwhile循環數組

發布時間:2022-07-08 22:46:19

php使用while循環賦值給數組

先問你幾點有關你這個代碼的問題,不然我沒辦法回答,問題都在後面的注釋處
$lp=mysql_query("SELECT * FROM zp where sID=$row[ID]");
//該查詢中$row[ID]怎麼來的,$row[ID]是在後面的循環體中定義的,這里走來就出現不出錯嗎
$lp_num=mysql_num_rows($lp);
while($row = mysql_fetch_array($lp))
{
$lp_xm[]=$row[xm];$lp_birth[]=$row[birth];$lp_dead[]=$row[dead];$lp_ID[]=$row[ID];
$q=0;
$en_num=0;
while($q<$lp_num)
{
$en=mysql_query("SELECT * FROM zp where sID=$lp_ID[$q]");//執行查詢b
$en_num=mysql_num_rows($en)+$en_num;
//上面的值 $en_num應該等於數據行數X(1+2+3+4+5+...+總行數$lp_num),但是這一步是想做什麼呢,不理解
while($row = mysql_fetch_array($en))
{
$en_xm[]=$row[xm];$en_birth[]=$row[birth];$en_dead[]=$row[dead];$en_ID[]=$row[ID];
}
echo "$en_num\n";
//問題中的不是說 輸出$en_xm嗎,怎麼輸出的是$en_num
$q++;
}
}

❷ 關於php數組while循環問題!

要不就把print_r($num);放到for循環外面,要麼就在每次列印後unset($num)一下。
因為你這個$num是數組,循環一次就累加了一次,你沒有清空就會一直累加。

❸ php數組指針的問題,while each遍歷

一開始沒看出你的問題來,差點答錯了。你的問題是出現在&$value上,而不是數組的移動。
你foreach最後的$value是$name['name4']的引用,while的循環中,不斷變化著$name['name4']的值,你可以在while循環最後每次都列印完整數組看出效果。

關鍵點:變數引用在循環結束後沒有刪除,你在foreach後面加一句unset($value);就沒問題了

---邪惡的分割線---

這里涉及到數組遍歷時指針移動問題。
1、foreach循環的每次循環中,數組內部的指針向前移一步,直到越界退出
2、當foreach開始執行時,數組內部的指針會自動指向第一個單元。這意味著不需要在foreach循環之前調用reset()。
3、each()返回array數組中當前指針位置的鍵/值對並向前移動數組指針
4、如果內部指針越過了數組的末端,則each()返回FALSE

你的例子,前面的foreach遍歷會導致數組$name最終指針越界退出,然後,如果沒有使用reset($name),則$name的指針是foreach執行後的位置,是越界的,直接使用each會返回false

❹ php中用while()、list()、each()遍歷數組後,數組指針是停留在數組外面還是在數組最後一個單元上

停留在最後一個單元,所以無論是while 還是each,都有替代語法endwhile,來表示結束,關閉數據連接。

❺ 關於PHP while循環數組相加問題

$countnum = 0;//要統計相加的變數

while($forumattach = DB::fetch($queryattach)) {
$countnum += intval($forumattach['size']);//每次都把數值添加到countnum這個變數上面
}
echo $countnum;//這樣就能得到總數了

❻ PHP中使用while循環寫入數組的方法

循環寫入示例如下(其他循環寫入原理也是一樣的):

<?php

//定義空數組
$arr=array();
//循環初始化條件
$i=1;
//根據判斷進行while循環
while($i<=10){
//寫入數組
$arr[]="元素".$i;
//遞增
$i++;
}
print_r($arr);

/*
*Array
(
[0]=>元素1
[1]=>元素2
[2]=>元素3
[3]=>元素4
[4]=>元素5
[5]=>元素6
[6]=>元素7
[7]=>元素8
[8]=>元素9
[9]=>元素10
)*/
?>

❼ php中數組怎麼循環輸出

可以使用foreach函數輸出。舉例如下:

PHP:

$arr=[1,2,3,4,5];
foreach($arras$v){
echo$v.'<br/>';
}

運行結果:循環輸出數組中的每個值。

閱讀全文

與phpwhile循環數組相關的資料

熱點內容
同城公眾源碼 瀏覽:472
一個伺服器2個埠怎麼映射 瀏覽:280
java字元串ascii碼 瀏覽:59
台灣雲伺服器怎麼租伺服器 瀏覽:458
旅遊手機網站源碼 瀏覽:312
android關聯表 瀏覽:927
安卓導航無聲音怎麼維修 瀏覽:318
app怎麼裝視頻 瀏覽:421
安卓系統下的軟體怎麼移到桌面 瀏覽:78
windows拷貝到linux 瀏覽:753
mdr軟體解壓和別人不一樣 瀏覽:886
單片機串列通信有什麼好處 瀏覽:322
游戲開發程序員書籍 瀏覽:846
pdf中圖片修改 瀏覽:273
匯編編譯後 瀏覽:478
php和java整合 瀏覽:833
js中執行php代碼 瀏覽:445
國產單片機廠商 瀏覽:60
蘋果手機怎麼設置不更新app軟體 瀏覽:287
轉行當程序員如何 瀏覽:496