[英]while else statement? PHP
所以我使用while語句驗證了null值
while (!$rs->EOF){
echo "<tr><td>".$rs->Fields("Branch")."</td>";
$rs->movenext();
}
$rs->Close();
?>
我想要實現的是擁有一個“else”語句,雖然我知道使用where語句是不可能的。 哪一個在where語句中相當於它?
while (!$rs->EOF){
echo "<tr><td>".$rs->Fields("Branch")."</td>";
$rs->movenext();
}
if(!$rs->EOF)
{
echo "<tr><td> Branch is missing</td>";
}
$rs->Close();
?>
我嘗試使用“如果”我沒有得到任何錯誤,雖然它沒有打印我想要打印的內容
雖然-Else在php中不存在。
你可以使用:
if ($rs->EOF) {
echo "<tr><td> Branch is missing</td>";
} else {
while (!$rs->EOF){
echo "<tr><td>".$rs->Fields("Branch")."</td>";
$rs->movenext();
}
}
$rs->Close();
我想提出一種稍微不同的方法來解決這個問題,它讓我的頭腦更有意義:
if (!$rs.EOF()) {
while (!$rs.EOF()) {
// code...
}
}
else {
// code...
}
我認為這對我更有意義,因為您通常希望在if塊中處理您的預期結果,並在else塊中處理其他結果。
while (!$rs->EOF){
表示“繼續執行此操作,直到$rs->EOF
為true
”。 當它結束時, $rs-EOF
將始終為真(否則循環將不會結束),因此條件將永遠不會通過。
您需要在某個時刻(可能在 while
循環之前 )進行測試,以查看是否找到了任何結果。 在不知道您正在使用哪個庫的情況下,無法說明如何執行此操作。
在嘗試循環之前 ,您應該檢查結果集是否為空。
例如像這樣的偽代碼:
rs = sql("SELECT ...");
if (rs.isEmpty())
print "No data";
else
{
while (!rs.EOF())
{
...
}
}
我認為下面的代碼可以幫到你,
<?php while (!$rs->EOF){
if($rs->Fields("Branch"))
{
echo "<tr><td>".$rs->Fields("Branch")."</td>";
$rs->movenext();
}else{
echo "<tr><td> Branch is missing</td>";
}
}
$rs->Close();
?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.