Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP中的If/Elseif语句_Php_Html_If Statement - Fatal编程技术网

PHP中的If/Elseif语句

PHP中的If/Elseif语句,php,html,if-statement,Php,Html,If Statement,我们正在尝试为变量$day创建if/elseif语句。我们在与此PHP关联的HTML代码中定义了变量及其值。我将把PHP部分粘贴到此页面。问题是结果页面只给出了“$day=1”的响应。有人知道这段代码中的错误会导致这种情况发生吗?我们也尝试过使用两个等号,但这让情况变得更糟 echo "<p>"; if ($day = 1) { echo "Sunday Funday! What COMMITMENT to go

我们正在尝试为变量
$day
创建if/elseif语句。我们在与此PHP关联的HTML代码中定义了变量及其值。我将把PHP部分粘贴到此页面。问题是结果页面只给出了“$day=1”的响应。有人知道这段代码中的错误会导致这种情况发生吗?我们也尝试过使用两个等号,但这让情况变得更糟

echo "<p>";
                if ($day = 1) {
                    echo "Sunday Funday! What COMMITMENT to going out!";
                } elseif ($day = 2) {
                    echo "The start of what's sure to be a rough week. Drink away your sorrows.";
                } elseif ($day = 3) {
                    echo "Epic night! SO many themes at the bars!";
                } elseif ($day = 4) {
                    echo "Hump day!! But seriously, what are you doing...? Aren't you too hungover from last night?";
                } elseif ($day = 5) {
                    echo "Thirsty Thursday!! It's close enough to the weekend... right?";
                } elseif ($day = 6) {
                    echo "It's Friiiiiiday, Friiiiiiiday, Gotta get down on Friiiiiiiiiday!";
                } elseif ($day = 7) {
                    echo "It's FRATurday! Go have some fun!";

            } 
echo“”;
如果($day=1){
echo“Sunday Funday!什么样的外出承诺!”;
}elseif($day=2){
回声:“这肯定是艰难的一周的开始。喝掉你的悲伤。”;
}elseif($day=3){
回声“史诗般的夜晚!酒吧里有这么多主题!”;
}elseif($day=4){
回声“驼峰日!!但说真的,你在干什么…?你昨晚不是太宿醉了吗?”;
}elseif($day=5){
echo“口渴的星期四!!离周末已经很近了…对吧?”;
}elseif($day=6){
echo“这是周五,周五,周五要下来!”;
}elseif($day=7){
echo“这是兄弟会!去玩一玩吧!”;
} 
您正在分配(
=
)。您需要一个逻辑等式(
==

退房并离开。另外,

您正在分配(
=
)。您需要一个逻辑等式(
==


退房并离开。另外,当您打算使用比较时,.

您正在使用赋值
=

if ($day == 1) {
  echo "Sunday Funday! What COMMITMENT to going out!";
}
赋值计算为右边的值,所以

if ($day = 1)

if (1)
if (true)
由于的原因与

if (1)
if (true)
这应该解释为什么程序的行为如此,当然你现在知道如何修复它了。但如果您使用
开关
语句,效果会更好:

switch($day) {
    case 1:
        echo "Sunday Funday! What COMMITMENT to going out!";
        break;
    case 2:
        echo "The start of what's sure to be a rough week.";
        break;
    // etc etc
}

当您打算使用比较时,您正在使用赋值
=

if ($day == 1) {
  echo "Sunday Funday! What COMMITMENT to going out!";
}
赋值计算为右边的值,所以

if ($day = 1)

if (1)
if (true)
由于的原因与

if (1)
if (true)
这应该解释为什么程序的行为如此,当然你现在知道如何修复它了。但如果您使用
开关
语句,效果会更好:

switch($day) {
    case 1:
        echo "Sunday Funday! What COMMITMENT to going out!";
        break;
    case 2:
        echo "The start of what's sure to be a rough week.";
        break;
    // etc etc
}

比较运算符是
=
,而不是
=

还可以尝试这种查找表方法,这种方法在这种情况下更为简洁:

$day_msg = array(
    1 => "Sunday Funday! What COMMITMENT to going out!",
    2 => "The start of what's sure to be a rough week. Drink away your sorrows.",
    3 => "Epic night! SO many themes at the bars!",
    4 => "Hump day!! But seriously, what are you doing...? Aren't you too hungover from last night?",
    5 => "Thirsty Thursday!! It's close enough to the weekend... right?"
    6 => "It's Friiiiiiday, Friiiiiiiday, Gotta get down on Friiiiiiiiiday!",
    7 => "It's FRATurday! Go have some fun!"
);
echo "<p>";
echo $day_msg[$day];
$day\u msg=array(
1=>“Sunday Funday!什么样的外出承诺!”,
2=>“这肯定是艰难的一周的开始。喝掉你的悲伤。”,
3=>“史诗之夜!酒吧里有这么多主题!”,
4=>“驼峰日!!但说真的,你在干什么…?你昨晚不是太宿醉了吗?”,
5=>“口渴的星期四!!离周末已经很近了…对吗?”
6=>“今天是星期五,星期五,星期五必须下来!”,
7=>“这是兄弟会!去玩玩吧!”
);
回声“”;
echo$day_msg[$day];

比较运算符是
=
,而不是
=

还可以尝试这种查找表方法,这种方法在这种情况下更为简洁:

$day_msg = array(
    1 => "Sunday Funday! What COMMITMENT to going out!",
    2 => "The start of what's sure to be a rough week. Drink away your sorrows.",
    3 => "Epic night! SO many themes at the bars!",
    4 => "Hump day!! But seriously, what are you doing...? Aren't you too hungover from last night?",
    5 => "Thirsty Thursday!! It's close enough to the weekend... right?"
    6 => "It's Friiiiiiday, Friiiiiiiday, Gotta get down on Friiiiiiiiiday!",
    7 => "It's FRATurday! Go have some fun!"
);
echo "<p>";
echo $day_msg[$day];
$day\u msg=array(
1=>“Sunday Funday!什么样的外出承诺!”,
2=>“这肯定是艰难的一周的开始。喝掉你的悲伤。”,
3=>“史诗之夜!酒吧里有这么多主题!”,
4=>“驼峰日!!但说真的,你在干什么…?你昨晚不是太宿醉了吗?”,
5=>“口渴的星期四!!离周末已经很近了…对吗?”
6=>“今天是星期五,星期五,星期五必须下来!”,
7=>“这是兄弟会!去玩玩吧!”
);
回声“”;
echo$day_msg[$day];

你的第一个想法是对的,你需要两个等号。

你的第一个想法是对的,你需要两个等号。

你想让所有的条件都变成这样吗

            if ($day == 1) {
                echo "Sunday Funday! What COMMITMENT to going out!";
            } elseif ($day == 2) {
                echo "The start of what's sure to be a rough week. Drink away your sorrows.";
            } elseif ($day == 3) {
                echo "Epic night! SO many themes at the bars!";
            } elseif ($day == 4) {
                echo "Hump day!! But seriously, what are you doing...? Aren't you too hungover from last night?";
            } elseif ($day == 5) {
                echo "Thirsty Thursday!! It's close enough to the weekend... right?";
            } elseif ($day == 6) {
                echo "It's Friiiiiiday, Friiiiiiiday, Gotta get down on Friiiiiiiiiday!";
            } elseif ($day == 7) {
                echo "It's FRATurday! Go have some fun!";

        } 

你想把所有的条件都变成这样吗

            if ($day == 1) {
                echo "Sunday Funday! What COMMITMENT to going out!";
            } elseif ($day == 2) {
                echo "The start of what's sure to be a rough week. Drink away your sorrows.";
            } elseif ($day == 3) {
                echo "Epic night! SO many themes at the bars!";
            } elseif ($day == 4) {
                echo "Hump day!! But seriously, what are you doing...? Aren't you too hungover from last night?";
            } elseif ($day == 5) {
                echo "Thirsty Thursday!! It's close enough to the weekend... right?";
            } elseif ($day == 6) {
                echo "It's Friiiiiiday, Friiiiiiiday, Gotta get down on Friiiiiiiiiday!";
            } elseif ($day == 7) {
                echo "It's FRATurday! Go have some fun!";

        } 

如果要检查的条件列表很长,通常不希望编写一长串If/else语句。而是尝试一个块,甚至一个地图:

代码变得非常简单:

 echo $map[ $day ];

(理想情况下,应该使用检查。但是对于开发阶段,PHP足够聪明,可以提供关于缺少条目的提示。如果输入值已经被约束/断言,则无需进行任何检查。)

如果要检查的条件列表很长,则通常不希望编写一长串If/else语句。而是尝试一个块,甚至一个地图:

代码变得非常简单:

 echo $map[ $day ];

(理想情况下,应该使用检查。但是对于开发阶段,PHP足够聪明,可以给出关于缺少条目的提示。如果输入值已经被约束/断言,那么就不需要了。)

您肯定需要2个等号作为=is赋值,您想使用If/else吗?在这种情况下最好使用switch,您确实需要使用
==
。你说的“让事情变得更糟”是什么意思?似乎你需要花更少的时间在酒吧里,花更多的时间在代码上;)第一个
=
是赋值运算符,
=
是条件运算符,将在
if
中使用。另外,对于您的逻辑
开关/case
方法,我认为更合适。您肯定需要2个等号作为=is赋值。您想特别使用if/else吗?在这种情况下最好使用switch,您确实需要使用
==
。你说的“让事情变得更糟”是什么意思?似乎你需要花更少的时间在酒吧里,花更多的时间在代码上;)第一个
=
是赋值运算符,
=
是条件运算符,将在
if
中使用。另外,对于您的逻辑
开关/case
方法,我认为更合适。当我们添加两个等号时,整个echo语句