混淆if else与php变量

时间:2012-07-26 22:21:50

标签: php if-statement

这是什么原因;

如果我进入我的设置页面并启用此

 <? if ( $setts['user_lang']) { ?>
                     <td nowrap style="border-left: 1px solid #dddddd;" align="center">&nbsp;&nbsp;
                        <?=$languages_list;?>
                        &nbsp;&nbsp;</td>
                     <? } ?>

作品

如果我这样做

<? if (1==1) { ?>
                     <td nowrap style="border-left: 1px solid #dddddd;" align="center">&nbsp;&nbsp;
                        <?=$languages_list;?>
                        &nbsp;&nbsp;</td>
                     <? } ?>

它只显示边框左边的位;是什么导致这个if if循环不显示变量?

3 个答案:

答案 0 :(得分:1)

我想说当$setts['user_lang']评估为false时,尚未设置变量$languages_list。所以它显示变量,但变量是空的。

答案 1 :(得分:0)

我认为你要做的就是检查$setts['user_lang']元素是否存在。在这种情况下,您应该使用isset() function 检查$setts['user_lang']元素是否存在。

<?php if (isset($setts['user_lang'])) { /* do work here */ } ?>

答案 2 :(得分:0)

你的$ languages_list可能是空的吗?

这有效

<?
$languages_list = 'blabla';
if (1==1) { 
?>
    <td nowrap style="border-left: 1px solid #dddddd;" align="center">
    &nbsp;&nbsp;
    <?=$languages_list;?>
    &nbsp;&nbsp;</td>
<? } ?>