PHP空变量内部条件

时间:2017-11-10 09:33:07

标签: php

我有一个条件,它使用一个变量来拉0到17之间的数字,字符串" MAKEUP"或者变量是空的。我希望它输出文字" WIN"如果变量大于数字8和" LOSS"如果变量小于数字9.我也希望它出来" MAKEUP"如果变量由字符串MAKEUP组成,并且如果变量为空则不显示任何内容。对我来说似乎很简单,但我特别关注空白部分。任何人都可以让我知道我在做错了什么吗?代码

    <?php
    $t1w8 = '';
    $result = $t1w8;
    if ($result > 8 && !empty($result)) {
        echo 'WON';
    } elseif ($result < 9 && !empty($result)) {
        echo 'LOSS';
    } elseif ($result == 'MAKEUP') {
        echo '-';
    } else {
        echo 'yooo';
    }
    ?>

3 个答案:

答案 0 :(得分:0)

尝试使用此代码

<?php

//$result = "MAKEUP";
$result = "";
//$result = "9";
//$result = "-";

if ($result == 'MAKEUP' && !empty($result) ) {
    echo '-';
} elseif ($result > 8 && !empty($result)) {
    echo 'WON';
} elseif ($result <= 8 && !empty($result)) {
    echo 'LOSS';
} else {
    echo 'yooo';
}
?>

for demo:demo code here

答案 1 :(得分:0)

对您的条件进行一些更改

<?php
    //$result = "MAKEUP";
    $result = 0;
    if ($result === 'MAKEUP') {
        echo '-';
    }else if (is_numeric($result) && $result < 9 ) {
        echo 'LOSS';
    }else if (is_numeric($result) && $result >= 9 ) {
        echo 'WON';
    } else{
        echo 'yooo';
    }
?>

现场演示:https://eval.in/897120

答案 2 :(得分:0)

您已解释过您的号码范围是0-17。 你还解释说你可以得到MAKEUP这个词。

根据这些限制,我们可以使用类似的东西

$output = "";
// Do we have something?
if(strlen($result) > 0) {
    if (strtolower($result) == "makeup") {
        $output = "MAKEUP";
    }
    // assumes a single digit string
    else if ($result < 9) {
        $output = "LOSS";
    } else if ($result <= 17) {
        $output = "WIN";
    }
}
echo $output;