这段代码有什么问题吗?
<?php
$variable = ;
if (isset($variable))
{
echo $variable ;
echo "also this" ;
}
else
echo "The variable is not set" ;
?>
另外,变量的另一个潜在价值是:
$variable = <a href="http://www.mysite.com/article">This Article</a>;
为了澄清,我有一个变量可能包含两个可能的值之一:带有它的url的 a href 标记,或者根本不知道。对于每种情况,我需要有两种不同的打印输出,但也许我不是以正确的方式做到这一点!
答案 0 :(得分:1)
在PHP中,您不需要初始化变量来检查它是否已设置。代码的第一行不仅无效,而且也是不必要的。
编辑:好的,根据您在评论中的说明,变量始终设置,但有时包含文本,有时包含空字符串。在这种情况下,我会在评论中遵循@prodigitalson的建议:
if (isset($variable) && !empty($variable))
{
// do set stuff here
}
else
{
// not set, do blank stuff here
}
答案 1 :(得分:0)
应该是:
<?php
if (isset($variable))
{
echo $variable ;
echo "also this" ;
}
else
{
echo "The variable is not set" ;
}
?>
或者更简洁:
<?php echo isset($variable) ? $variable."\nalso this" : null; ?>
答案 2 :(得分:0)
第一行状态
$variable = ;
你不能这样做......你需要将变量设置为某个东西,或者取消设置它。 E.g
$variable = '';
或
unset($variable);
如果您发布了收到的错误消息,将来会有所帮助,因为这有助于我们为您提供帮助!
答案 3 :(得分:0)
$variable = ;
无效。它应该是
$variable = null; // or any other empty value
如果你真的需要包含变量定义