>更新:
以下代码
function findNowPlayingCondition () {
if (isset($nowplayingname) && isset($nowplayingartist)) {$nowplayingcond = '1'; };
if (isset($nowplayingname) && !$nowplayingartist) {$nowplayingcond = '2'; };
if (!$nowplayingname && isset($nowplayingartist)) {$nowplayingcond = '3'; };
if (!$nowplayingname && !$nowplayingartist) {$nowplayingcond = '4'; };
echo "$nowplayingcond";
}
总是带着"4"回来,再次,我被难住了。
====
================我正在尝试创建一个 PHP if/then 语句,如果 $nowplayingname 中有一个有效的字符串,并且$nowplayingartist未设置、是 '',或者是 NULL,它会$nowplayingcond设置为 '2'。
if (var_dump(isset($nowplayingname)) && !$nowplayingartist) {$nowplayingcond = '2'};
执行时出现解析错误,我怀疑它与var_dump(isset(
有关,但我不确定。
这样
就可以了。
if(!empty($nowplayingname) && !isset($nowplayingartist))
{
$nowplayingcond = 2;
}
要修复语法错误,请执行以下操作:
if (var_dump(isset($nowplayingname)) && !$nowplayingartist) {$nowplayingcond = '2';};
// ---^
进一步建议:
正确缩进代码,不要以这种方式使用单行:
if (var_dump(isset($nowplayingname)) && !$nowplayingartist) { $nowplayingcond = '2'; }
为什么在 IF 语句中使用
var_dump()
?除了var_dump()
的返回值总是计算为一个虚假的布尔值之外,这条线没有意义(逻辑错误)。使用更具可读性的变量名称:
$nowPlayingName $nowPlayingArtist
你是对的,var_dump不应该在那里。 var_dump() 用于调试。
以下代码就足够了:
if(isset($nowplayingname)) { ... }