更新:
以下代码
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(
有关,但我不确定。
答案 0 :(得分:1)
这样做。
if(!empty($nowplayingname) && !isset($nowplayingartist))
{
$nowplayingcond = 2;
}
答案 1 :(得分:1)
修复语法错误:
if (var_dump(isset($nowplayingname)) && !$nowplayingartist) {$nowplayingcond = '2';};
// ---^
进一步的建议:
正确缩进代码,不要使用单行代码:
if (var_dump(isset($nowplayingname)) && !$nowplayingartist) {
$nowplayingcond = '2';
}
为什么在IF语句中使用var_dump()
?除了var_dump()
的返回值总是计算为假布尔值这一事实之外,该行没有意义(逻辑错误)。
使用更易读的变量名称:
$nowPlayingName
$nowPlayingArtist
答案 2 :(得分:-2)
你是对的,var_dump不应该在那里。 var_dump()用于调试。
以下代码就足够了:
if(isset($nowplayingname)) { ... }