1 minute read

学んだこと

1年後までの日付を表示する

  • for 文を応用すれば、1 年後までの日付を表示することができる。
  • 文字列と変数を一緒に扱いたい場合、ダブルコーテーションで囲えば変数内のデータを展開することもできる。
<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Sample01</title>
</head>
<body>
    <?php
    for($i = 0; $i < 366; $i++):
        $time = strtotime("+$i day");
        // strtotime('+'.$i.'day');でもOK

        $day = date('n/j(D)', $time);
        echo $day . '<br>';
    endfor
    ?>
</body>
</html>

配列の使い方

  • $変数名 = [配列の中身, ...]で配列を宣言する。
  • 配列内にアクセスしたい場合は、$変数名[配列の要素番号]でアクセスする。
<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Sample01</title>
</head>
<body>
    <?php
    $week_name = ['日', '月', '火', '水', '木', '金', '土'];

    date_default_timezone_set('Asia/Tokyo');
    $week = date('w');
    echo $week_name[$week];
    ?>
</body>
</html>

連想配列の使い方

  • $変数名 = ['Key名'=>'Value', ...]で定義を行う。
  • 中身を取り出したい場合は、$変数名['Key名']とすると関連する要素から中身を取り出す事ができる。
  • 配列や連想配列を扱う場合、foreach も便利
    • foreach($配列名 as $変数名 => $Key名 => $value名)
    • $keyに配列から取得したKeyが入り、$value に配列から取得した value が入る。
<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Sample01</title>
</head>
<body>
    <?php
    $fruitu = [
        'apple' =>'りんご',
        'grape'=>'ぶどう',
        'lemon'=>'レモン',
        'tomato'=> 'トマト',
        'peach'=> 'もも'];

    ?>
    <dl>
        <?php foreach ($fruitu as $english => $japanese): ?>
            <dt><?php echo $english; ?></dt>
            <dd><?php echo $japanese; ?></dd>
        <?php endforeach ?>
</body>
</html>

条件式の書き方

  • 条件式を記述する際、C#や C++にない書き方や意味が違う条件式が存在した。気を付けて書かないと痛い目を見る。
    • $変数1 === $変数2
      • C++や C#に存在しない書き方。変数の型と変数の中身が同一の場合 true を返す。
    • $変数1 !== $変数2
      • ++や C#に存在しない書き方。変数の型と変数の中身が同一の場合 true を返す。
    • $変数1 = $変数2
      • C++や C#と異なる動きをする。片方が文字列の場合、文字列を整数にキャストし、キャストした値と比較を行う。
      • C++や C#と同じ使い方を行うと、意図しない結果になる。
<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Sample01</title>
</head>
<body>
    <?php
    $s = 'あいうえお';
    if($s):
        echo '$sには文字が入っています。';
    endif;

    $x = 0;
    if(!$x):
        echo '0. 0ではない';
    endif;

    $x = 10;
    if(!$x):
        echo '1. 0ではない';
    endif;
    ?>
</body>
</html>

Tags:

Updated: