2012-07-13 30 views
0

我想知道是否有人可以帮助我。我相信这会很简单。如果信息已更新,则显示文本其他隐藏

我有一个表格,用户可以更新他们的帐户信息英寸在配置文件它打印此信息。但是,如果它的空洞无论如何都是隐藏它旁边的文字。

例如 如果$ data ['work']为空,我想隐藏'Works at'。

<?php echo "Works at ".$data['work']."" ?> 

我打算试一个案例,并打破数据库中的状态1。但是,由于他们有这么多的信息,我不认为这是可能的。

回答

2
<?php 
if(!empty($data['work'])) 
    echo "Works at ".$data['work']; 
?> 

编辑:要真正确保用户没有输入一些空格,你可以扩展它河北微调值:

<?php 
$trimmed = trim($data['work']); 
if(!empty($data['work'])) 
    echo "Works at ".$data['work']; 
?> 
+0

逃脱输出谢谢32bitfloat,正是我一直在寻找对。 – dave 2012-07-13 22:34:35

+0

完成。那些沮丧的人请留下评论,以便在我的帖子中有错误时,大家都知道吗? – 32bitfloat 2012-07-13 22:38:20

+0

我已经upvoted并接受你的答案。我也想知道是否有人认为他们的错误,因为它似乎工作正常。 – dave 2012-07-13 22:40:55

0
<?php if ($data['work'] != ""): ?> 
    Works at <?php echo $data['work']; ?> 
<?php endif; ?> 

或者

<?php 
if ($data['work'] != "") { 
    echo "Works at ".$data['work']; 
} 
?> 

或者

<?php 
echo ($data['work'] != "") ? "Works at ".$data['work'] : null; 
?> 

您可以使用修剪功能,以确保只有空格的字符串会被这个条件过于匹配:trim($data['work'])

0

您可以使用三元运算符,检查一个空的空间还没有被修剪第一

echo trim($data['work']) != '' ? 'Works at ' . $data['work'] : ''; 

它也是一个很好的做法提供了使用ヶ辆

echo trim($data['work']) != '' ? 'Works at ' . htmlentities($data['work'], ENT_QUOTES, 'UTF-8') : '';