1

このような状況で、曜日に基づいてコンテンツを表示する必要がある場合、ステートメントを回避する理由または方法はありますか?

$d=date("w");
if ($d=="0") echo "Sunday";
if ($d=="1") echo "Monday";
if ($d=="2") echo "Tueday";
if ($d=="3") echo "Wednesday";
if ($d=="4") echo "Thursday";
if ($d=="5") echo "Friday";
if ($d=="6") echo "Saturday";
4

5 に答える 5

1

これを行うには複数の方法があります。


1. (小文字のLlで 使用できます。date

echo date('l');


2.:を使用できarrayます

$days = array(
    "Sunday",
    "Monday",
    "Tuesday",
    "Wednesday",
    "Thursday",
    "Friday",
    "Saturday");

次に、次のコマンドでアクセスします。

echo $days[$d];


3.:を使用できswitchます

switch ($d)
{
    case 0:
        echo "Sunday";
    ...
}

switchただし、人間の脳が理解するのが最も難しいステートメント を避ける傾向があります。


いくつかのヒント:

  1. 火曜日のつづりを間違えました
  2. else if複数のの代わりに使用しifます。
于 2012-08-11T19:14:21.047 に答える
1
$dates = array("Sunday",
               "Monday",
               "Tuesday",
               "Wednesday",
               "Thursday",
               "Friday",
               "Saturday"
              );

echo $dates[date("w")];

それはうまく言葉にする必要があります。

編集:考えてみると、使用echo date("l")するだけで目的に応じてうまくいくはずです。

于 2012-08-11T19:15:39.513 に答える
1

配列を使用します。

$days_of_week = array(
    "Sunday",
    "Monday",
    "Tuesday",
    "Wednesday",
    "Thursday",
    "Friday",
    "Saturday");

echo $days_of_week[$d]
于 2012-08-11T19:15:50.967 に答える
1
echo date ('l');

PHPマンページによると

l (小文字の「L」): 曜日の完全なテキスト表現

于 2012-08-11T19:16:27.883 に答える
0

次のようなswitch ステートメントをいつでも調べることができます。

$d=date('w');
switch($d) {
    case(0):
        $day='Sunday';
        break;
    case(1):
        $day='Monday';
        break;
    case(2):
        $day='Tuesday';
        break;
    case(3):
        $day='Wednesday';
        break;
    case(4):
        $day='Thursday';
        break;
    case(5):
        $day='Friday';
        break;
    case(6):
        $day='Saturday';
        break;
    default:
        $day=null;
}
if($day!==null) {echo($day);}
于 2012-08-11T19:19:03.417 に答える