PHP elseif语句不起作用

时间:2014-04-25 11:41:24

标签: php wordpress if-statement

我目前正在使用wordpress开发一个使用FSQM Pro测验插件的网站。该插件使用格式字符串%DESIGNATION%来显示用户在完成测验时获得的排名。

我正在尝试编写一些将根据用户所达到的排名输出不同文本的php但由于某种原因它只输出任何内容。我的代码如下,有人可以帮忙吗?

这段代码位于单独的php文件$format_string_components = $this->get_format_string();

<?php
$a="Ranking 1";
$b="Ranking 2";
$c="Ranking 3";
$d="Ranking 4";

if ($format_string_components['%DESIGNATION%'] == $a) {
    echo 'text 1';

} elseif ($format_string_components['%DESIGNATION%'] == $b) {
    echo 'text 2';

} elseif ($format_string_components['%DESIGNATION%'] == $c) {
    echo 'text 3';

} elseif ($format_string_components['%DESIGNATION%'] == $d) {
    echo 'text 4'; 

} else {
    echo '<p>Your result was not found.</p>';
}
?>

4 个答案:

答案 0 :(得分:1)

更改为"。删除空格<? php

<?php
    $a="Ranking 1";
    $b="Ranking 2";
    $c="Ranking 3";
    $d="Ranking 4";

    if ($format_string_components['%DESIGNATION%'] == $a) {
        echo "text 1";

    } elseif ($format_string_components['%DESIGNATION%'] == $b) {
        echo "text 2";

    } elseif ($format_string_components['%DESIGNATION%'] == $c) {
        echo "text 3";

    } elseif ($format_string_components['%DESIGNATION%'] == $d) {
        echo "text 4"; 

    } else {
        echo "<p>Your result was not found.</p>";
    }
?>

答案 1 :(得分:0)

由于您使用过的引号,它无法正常工作。将报价更改为&#34; &#34 ;.像

if ($format_string_components['%DESIGNATION%'] == $a) {
        echo "text 1";

    } elseif ($format_string_components['%DESIGNATION%'] == $b) {
        echo "text 2";

    } elseif ($format_string_components['%DESIGNATION%'] == $c) {
        echo "text 3";

    } elseif ($format_string_components['%DESIGNATION%'] == $d) {
        echo "text 4"; 

    } else {
        echo "<p>Your result was not found.</p>";
    }

还要避开<?php标记中的空格。

答案 2 :(得分:0)

<?php

    $a="Ranking 1";
    $b="Ranking 2";
    $c="Ranking 3";
    $d="Ranking 4";

    if ($format_string_components['%DESIGNATION%'] == $a) {
        echo 'text 1';

    } elseif ($format_string_components['%DESIGNATION%'] == $b) {
        echo 'text 2';

    } elseif ($format_string_components['%DESIGNATION%'] == $c) {
        echo 'text 3';

    } elseif ($format_string_components['%DESIGNATION%'] == $d) {
        echo 'text 4'; 

    } else {
        echo '<p>Your result was not found.</p>';
    }
?>

答案 3 :(得分:0)

更改引号(&#34;)并从

中删除空格
<? php

代码使用它:

<?php
    $a="Ranking 1";
    $b="Ranking 2";
    $c="Ranking 3";
    $d="Ranking 4";

    if ($format_string_components['%DESIGNATION%'] == $a) {
        echo "text 1";
    } elseif ($format_string_components['%DESIGNATION%'] == $b) {
        echo "text 2";
    } elseif ($format_string_components['%DESIGNATION%'] == $c) {
        echo "text 3";
    } elseif ($format_string_components['%DESIGNATION%'] == $d) {
        echo "text 4"; 
    } else {
        echo "<p>Your result was not found.</p>";
    }
?>