2014-10-09 84 views
0

我有一個窗體,其中一些字段是可選的。我稍後顯示這些字段。只顯示值如果不爲空 - PHP

我想從我的數據庫只顯示一個值,如果有一個值。否則,什麼都不顯示。

這是需要,如果有一個值要顯示什麼 -

<div class='category' style='font-size:20px; background-color:f2f2f2'>".$row['project_category']."</div> 

我應該使用 '如果(strlen的($ prjcat)> 0)'?

謝謝!

+1

'if(!empty(FIELD)){SHOW FIELD; }'..? – Darren 2014-10-09 05:21:21

+0

http://www.php.net/empty – Cheery 2014-10-09 05:21:26

回答

-1

您可以嘗試不爲空此:

if(!empty($row['project_category'])){ 
    echo '<div class="category" style="font-size:20px; background-color:f2f2f2">'.$row['project_category'].'</div>'; 
} 
+0

我不認爲用'''引用整個字符串是一個好主意。缺少「回聲」是一個錯字? – Tom 2014-10-09 05:25:03

+0

正確的湯姆。然而,使用單引號稍快。 PHP不會使用額外的處理來解釋單引號內的內容。當您使用雙引號時,PHP必須解析以檢查其中是否有變量。 – 2014-10-09 06:09:23

1

你正在尋找一個if語句來檢查是否爲空值:

if(!empty($row['project_category'])){ 
    echo "<div class='category' style='font-size:20px; background-color:f2f2f2'>".$row['project_category']."</div>"; 
} 
0

PHP剛剛你的功能尋找〜empty() ...

<?php if (!empty($row['project_category'])) : ?> 
<div class="category" style="font-size:20px; background-color:f2f2f2;"> 
    <?= htmlspecialchars($row['project_category']) ?> 
</div> 
<?php endif ?> 

或者,如果你正在循環一些字段名

<?php foreach ($fields as $field) : ?> 
    <?php if (!empty($row[$field])) : ?> 
    <div class="category" style="font-size:20px; background-color:f2f2f2;"> 
     <?= htmlspecialchars($row[$field]) ?> 
    </div> 
    <?php endif ?> 
<?php endforeach ?> 
0

這是更好地使用這種

<?php if(trim($row['project_category']) != "") { ?> 
    <div class="category" style="font-size:20px; background-color:f2f2f2"> <?php echo $row['project_category']; ?></div> 
<?php } ?> 

不要使用空的,如果你的列值可以爲零。因爲當你使用empty($row['project_category'])$row['project_category'] = 0它會返回true。 欲瞭解更多信息,請查閱here