PHP 代码.显示季节(第 2 轮)


PHP code.Display the seasons (round 2)

我昨天发帖,代码中有很多错误,所以我又开始了。代码没有显示任何内容,是否缺少某些内容。我是新手,所以试图学习。当我将其加载到本地主机时,它返回的只是"无效季节"

<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$season = array('winter','spring','summer','autumn');
function getWinterMonths(){
$WinterMonths = array(
1 => array('November'),
2 => array('December'),
3 => array('January')
);
return $WinterMonths;
}
function getSpringMonths(){
$SpringMonths = array(
1 => array('February'),
2 => array('March'),
3 => array('April')
);
return $SpringMonths;
}

function getSummerMonths(){
$SummerMonths = array(
1 => array('May'),
2 => array('June'),
3 => array('July')
);
return $SummerMonths;
}
function getAutumnMonths(){
$AutumnMonths = array(
1 => array('August'),
2 => array('September'),
3 => array('October')
);
return $AutumnMonths;
}   

if($season  == "winter")
echo $WinterMonths();
else if($season == "spring")
echo $SpringMonths();
else if($season == "summer")
echo $SummerMonths();
else if($season == "autumn")
echo $AutumnMonths();
else{
echo "Invalid season entred";
}
if ($_SERVER['REQUEST_METHOD'] === 'POST') {

只需检查您是否有 POST 方法,它不会获取 post 变量,您需要为此使用 $_POST。

您没有向函数传递任何内容,我假设您想通过 $_POST 传递季节,因此您需要以下内容: $_POST['season'] ;

希望有帮助

您的代码似乎无效。例如,您正在将字符串与数组进行比较:

$season = array('winter','spring','summer','autumn');
/* more stuff */
else if($season == "summer")

虽然$season它是一个数组,但此条件将始终false 。 如果您像这样更改比较,它可以工作:

<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$arrSeason = array('winter','spring','summer','autumn');
function getWinterMonths(){
$WinterMonths = array(
1 => array('November'),
2 => array('December'),
3 => array('January')
);
return $WinterMonths;
}
function getSpringMonths(){
$SpringMonths = array(
1 => array('February'),
2 => array('March'),
3 => array('April')
);
return $SpringMonths;
}

function getSummerMonths(){
$SummerMonths = array(
1 => array('May'),
2 => array('June'),
3 => array('July')
);
return $SummerMonths;
}
function getAutumnMonths(){
$AutumnMonths = array(
1 => array('August'),
2 => array('September'),
3 => array('October')
);
return $AutumnMonths;
}   

$season = $_POST['season']; /* For example get from post */
if($season  == "winter")
   echo getWinterMonths();
else if($season == "spring")
   echo getSpringMonths();
else if($season == "summer")
   echo getSummerMonths();
else if($season == "autumn")
   echo getAutumnMonths();
else{
   echo "Invalid season entred";
}