就是說 A表有10條資料,欄位為phone,select之後 用while遍曆,在while裡面進行判斷,$i的phone值與$i+1的phone值如果都等於0,那麼進行相關操作。 這個迴圈該怎麼寫
代碼已經寫到這:
$i=0;while ($row = $db->fetch_array($result)){$i++;}
回複討論(解決方案)
資料比較大,最好也可以考慮下效率問題。
增加一個計數器,判斷這個計數器的連續性,是則執行,否則重設
不然就把結果轉數組,用foreach對下標操作
增加一個計數器,判斷這個計數器的連續性,是則執行,否則重設
不然就把結果轉數組,用foreach對下標操作
計數器的話該怎麼操作,本人菜鳥,萬分感謝。
$last = array();while ($row = $db->fetch_array($result)){ if($last && $row['phone'] == 0 && $last['phone'] == 0) { //處理代碼 } $last = $row;}
也可以直接查詢
set @last:='';select @last as last, phone, @last:=phone from tbl_name
直接對比或讀出後處理
增加一個計數器,判斷這個計數器的連續性,是則執行,否則重設
不然就把結果轉數組,用foreach對下標操作
計數器的話該怎麼操作,本人菜鳥,萬分感謝。
和#4的思路類似,但老徐直接用了快取資料,比用計數器更簡潔了(計數器是緩衝下標$i),所以我就不獻醜了
$last = array();while ($row = $db->fetch_array($result)){ if($last && $row['phone'] == 0 && $last['phone'] == 0) { //處理代碼 } $last = $row;}
也可以直接查詢
set @last:='';select @last as last, phone, @last:=phone from tbl_name
直接對比或讀出後處理
增加一個計數器,判斷這個計數器的連續性,是則執行,否則重設
不然就把結果轉數組,用foreach對下標操作
計數器的話該怎麼操作,本人菜鳥,萬分感謝。
和#4的思路類似,但老徐直接用了快取資料,比用計數器更簡潔了(計數器是緩衝下標$i),所以我就不獻醜了
非常感謝。
$last = array();while ($row = $db->fetch_array($result)){ if($last && $row['phone'] == 0 && $last['phone'] == 0) { //處理代碼 } $last = $row;}
也可以直接查詢
set @last:='';select @last as last, phone, @last:=phone from tbl_name
直接對比或讀出後處理
那如果是 A表有兩個欄位,phone及value 。 迴圈判斷 $i.phone與$i+1.phone相同,$i.value與$i+1.value的值又都為0 這樣語句怎麼寫?
有一就有二,不過就是多加的判斷而已