Php如果是空变量语句

时间:2013-07-03 20:06:13

标签: php html if-statement

我正在尝试构建一个if语句,当变量用url填充时,它会显示一个按钮并链接到该站点,当变量为空时,链接和按钮将不会显示。到目前为止,我得到它显示按钮和链接的地方,但使它成为一个if语句继续打破我的网站。如果您发现以下代码存在问题,请提供帮助。感谢

<div id="social_icon">
<?php if (isset($fburl))
{ 
<a href="<?php echo $options['fburl']; ?>">
<img src="http://farm6.staticflickr.com/5534/9135106179_43deba3d15_o.png"" width="30"    
height="30"></a>; 
}
else
{
//dont show anything
}
?>   
</div>

2 个答案:

答案 0 :(得分:2)

您正在尝试在PHP代码中使用HTML,因此PHP将其视为意外的变量/字符串。要么使用echo,要么关闭PHP语句,然后编写HTML。

或者:

<div id="social_icon">
    <?php if(isset($fburl)){ ?> 
        <a href="<?php echo $options['fburl']; ?>">
            <img src="http://farm6.staticflickr.com/5534/9135106179_43deba3d15_o.png" width="30" height="30" />
        </a>
    <?php }else{
        //dont show anything
    } ?>   
</div>

或者:

<div id="social_icon">
    <?php if (isset($fburl)){ 
        echo '<a href="'.$options['fburl'].'"><img src="http://farm6.staticflickr.com/5534/9135106179_43deba3d15_o.png" width="30" height="30" /></a>'; 
    }else{
        //dont show anything
    } ?>   
</div>

修改

实际上,我认为它没有输出任何内容,因为你的if语句正在检查$fburl,而你echo链接为$options['fburl']。如果Facebook网址位于$options['fburl'],请尝试:

<div id="social_icon">
    <?php if(isset($options['fburl'])){ ?> 
        <a href="<?php echo $options['fburl']; ?>">
            <img src="http://farm6.staticflickr.com/5534/9135106179_43deba3d15_o.png" width="30" height="30" />
        </a>
    <?php }else{
        //dont show anything
    } ?>   
</div>

修改2

如果设置了选项但不包含链接,则还需要检查:

<div id="social_icon">
    <?php if(isset($options['fburl']) && !empty($options['fburl'])){ ?> 
        <a href="<?php echo $options['fburl']; ?>">
            <img src="http://farm6.staticflickr.com/5534/9135106179_43deba3d15_o.png" width="30" height="30" />
        </a>
    <?php }else{
        //dont show anything
    } ?>   
</div>

答案 1 :(得分:0)

语法错误,将其更改为:

<?php if (isset($fburl))
{
//missed end tag here
?>
<a href="<?php echo $options['fburl']; ?>">
<img src="http://farm6.staticflickr.com/5534/9135106179_43deba3d15_o.png"" width="30"    
height="30"></a>; 
<?php
//add another php start tag
}
else
{
//dont show anything
}
?>