Web アプリ入門 / ch06 — 簡易ルーター (REQUEST_METHOD + REQUEST_URI 分岐) / 演習 02

📝 ドリル 02 — URI で分岐するルーター

問題

$_SERVER['REQUEST_URI'] を見て、次の通り応答する PHP を書いてください。

  • /users"users一覧" を 1 行出力
  • /posts"posts一覧" を 1 行出力
  • それ以外 → "404" を 1 行出力

採点ランナーは CLI 直実行なので、冒頭で stdin の 1 行$_SERVER['REQUEST_URI'] に代入してください。

このドリルの入力例:

/users

期待される出力:

users一覧

採点

php scripts/grade.php topics/12-web/ch06-routing-basic/drill/02-uri-router/

ヒント

$_SERVER['REQUEST_URI'] = trim(fgets(STDIN) ?: '');
echo match ($_SERVER['REQUEST_URI']) {
    '/users' => "users一覧\n",
    '/posts' => "posts一覧\n",
    default  => "404\n",
};
▶ 3v4l で実行

テストケース

標準入力

/users

期待される出力

users一覧

📄 starter.php(雛形)

このコードから書き始めてください。

<?php

// 採点用スタブ: 標準入力の 1 行を URI として読み込む
$_SERVER['REQUEST_URI'] = trim(fgets(STDIN) ?: '');

// TODO: /users → "users一覧", /posts → "posts一覧", それ以外 → "404"
✅ 解答例を見る(自分で解いてから)
<?php

// 採点用スタブ: 標準入力の 1 行を URI として読み込む
$_SERVER['REQUEST_URI'] = trim(fgets(STDIN) ?: '');

echo match ($_SERVER['REQUEST_URI']) {
    '/users' => "users一覧\n",
    '/posts' => "posts一覧\n",
    default  => "404\n",
};