Web アプリ入門 / ch02 — `php -S` 組み込みサーバー / ブラウザで動作確認 / 演習 01
📝 ドリル 01 — リクエスト URI で応答を分ける
問題
リクエストされた URI に応じて応答を分ける PHP を書いてください。
$_SERVER['REQUEST_URI']が"/hello"のとき →"Hello, Web!"を 1 行出力- それ以外のとき →
"404"を 1 行出力
採点ランナーは CLI 直実行なので、標準入力の 1 行目 を $_SERVER['REQUEST_URI'] に代入してから処理してください (スタブはコードに含めて構いません)。
このドリルの入力例:
/hello
期待される出力:
Hello, Web!
採点
php scripts/grade.php topics/12-web/ch02-builtin-server/drill/01-respond-text/
ヒント
$_SERVER['REQUEST_URI'] = trim(fgets(STDIN) ?: '');
if ($_SERVER['REQUEST_URI'] === '/hello') { ... } else { ... }本物の Web で確認したい場合
cd topics/12-web/ch02-builtin-server/drill/01-respond-text/
php -S localhost:8000 answer.php
ブラウザで http://localhost:8000/hello / http://localhost:8000/other を開く。
テストケース
標準入力
/hello
期待される出力
Hello, Web!
📄 starter.php(雛形)
このコードから書き始めてください。
<?php
// 採点用スタブ: 標準入力の 1 行を $_SERVER['REQUEST_URI'] に入れる
$_SERVER['REQUEST_URI'] = trim(fgets(STDIN) ?: '');
// TODO: $_SERVER['REQUEST_URI'] が '/hello' なら "Hello, Web!" を出力
// TODO: それ以外なら "404" を出力
✅ 解答例を見る(自分で解いてから)
<?php
// 採点用スタブ: 標準入力の 1 行を $_SERVER['REQUEST_URI'] に入れる
$_SERVER['REQUEST_URI'] = trim(fgets(STDIN) ?: '');
if ($_SERVER['REQUEST_URI'] === '/hello') {
echo "Hello, Web!\n";
} else {
echo "404\n";
}