.**非常にたくさんのケアレスミスがあります。**PHPコーディングの基礎の基礎の基礎をきちんと見直さないと今回だけの問題では済まないですよ。$i++){$born_year='$i';}```下記のようにしてデバッグしてみると分かります。**なぜなら冒頭```php$date=('Y');```これでは「本年」が取得できないからです。「Y」という文字列になっているはずです。[date関数](http://php.net/manual/ja/function.date.php)を使う必要があります。```php$date=date('Y');```$iが1990から始まって加算しようとするが、そもそも条件がYという文字列に向かっていこうとしているのでfor文がほぼ成り立っていない状態となり、1週もしないわけですね。これでは、forの中で$born_yearをechoしても出力結果は下記のようになります。$iが1990から始まって加算しようとするが、そもそも条件がYという文字列に向かっていこうとしているのでfor文がほぼ成り立っていない状態となり、1周もしないわけですね。これ(date()関数を使う)だけでは、forの中で$born_yearをechoしても出力結果は下記のようになります。[文字列内での変数展開](http://php-beginner.com/reference/variable/develop.html)シングルクォーテーション使いたいなら[文字列連結](http://php.net/manual/ja/language.operators.string.php)する必要があります。いうか、変数以外に何も入れないのであれば、クォーテーションで括る必要はないですね。/>・・・・```ただ、これでもセレクトボックスはできあがりません。value="2018">2018</option>```想定している「一番最後の年」ですね。//←$born_yearにずっと値を入れ続けている。}```では、どうすればいいか。下記のようにoption部分をfor時に作っても良いと思います。※ただし変数には文字列連結で。?></select>```それか、こんな感じにもできますね。.**非常にたくさんのケアレスミスがあります。**PHPコーディングの基礎の基礎の基礎をきちんと見直さないと今回だけの問題では済まないですよ。$i++){$born_year='$i';}```下記のようにしてデバッグしてみると分かります。**なぜなら冒頭```php$date=('Y');```これでは「本年」が取得できないからです。「Y」という文字列になっているはずです。[date関数](http://php.net/manual/ja/function.date.php)を使う必要があります。```php$date=date('Y');```$iが1990から始まって加算しようとするが、そもそも条件がYという文字列に向かっていこうとしているのでfor文がほぼ成り立っていない状態となり、1週もしないわけですね。これでは、forの中で$born_yearをechoしても出力結果は下記のようになります。[文字列内での変数展開](http://php-beginner.com/reference/variable/develop.html)シングルクォーテーション使いたいなら[文字列連結](http://php.net/manual/ja/language.operators.string.php)する必要があります。いうか、変数以外に何も入れないのであれば、クォーテーションで括る必要はないですね。/>・・・・```ただ、これでもセレクトボックスはできあがりません。value="2018">2018</option>```想定している「一番最後の年」ですね。//←$born_yearにずっと値を入れ続けている。}```では、どうすればいいか。下記のようにoption部分をfor時に作っても良いと思います。※ただし変数には文字列連結で。?></select>```それか、こんな感じにもできますね。頂いたご意見への回答は行っておりません。Ltd.teratailアカウントでログインログイン新規会員登録パスワードを忘れた方SNSアカウントでログインFacebookでログインTwitterでログインGoogleでログインGitHubでログインHatenaでログイン思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る閉じる。