簡體   English   中英

如果在回聲內聲明?

[英]If statement within echo?

我想知道是否可以在回顯中包含if語句。

我有if語句,它通過while循環回顯結果時工作正常……這是該語句:

<div><?php if ($row['image'] == '') {}
else {echo "<img src='data:image/jpeg;base64,".base64_encode($row['image'])."'>";} ?>
<?php if ($row['video'] == '') {}
else {echo "<iframe src={$row['video']}></iframe>";} ?></div>`

因此,基本上它是視頻還是圖像,都可以正常工作,但是隨后我實現了無限滾動到我的博客,該博客通過if語句從數據庫中回顯數據,如下所示:

if ($results) { 

while($obj = $results->fetch_object())
{
echo '

<div><h3>'.$obj->headline.'</h3> </div>

<div><img src='data:image/jpeg;base64,".base64_encode('.$obj->image.')."'></div>'

因此,我想知道是否有人知道是否可以在該回顯中傳輸該if語句,以便它首先顯示圖像,然后知道數據庫中是否存在一個圖像或何時存在一個視頻。

在此先感謝您的幫助。

PS:我對編碼/ php很陌生!

當然。 只需將echo拆分為多個語句即可:

while($row = $results->fetch_object()) {
    echo '<div>';
    if ($row['image'] == '') {
    } else {
        echo "<img src='data:image/jpeg;base64,".base64_encode($row['image'])."'>";
    }
    if ($row['video'] == '') {
    } else {
        echo "<iframe src={$row['video']}></iframe>";
    }
    echo '</div>';
}

試試這個。

//first initialize a variable as a string 
$result="";
while($obj = $results->fetch_object()) {
$result.="<div>";
if (!empty($obj['image'])){    
   $result.="<img src='data:image/jpeg;base64,".base64_encode($obj['image'])."'>";
}
elseif (!empty($obj['video'])){
   $result.="<iframe src={$obj['video']}></iframe>";
}else{
     //show some notification or leave it
     //echo 'not Found';
}
$result.="</div>";
}
//finally you need to print the result variable.
echo $result;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM