Echo in for loop

Это мой код:

<?php $date = 2015-02-30; $year = substr($date, 0, 4); $month = substr($date, 5, 2); $day = substr($date, 8, 2); ?> <select> <?php for ($i=1; $i < 31; $i++) { ?> <option value="<?php echo $i; ?>" <?php if($day === $i){ echo "selected"; }; ?>><?php echo $i; ?></option> <?php } ?> </select> 

Для параметра необходимо выбрать номер 4. Почему это не работает? благодаря

Извините, у меня уже было это в выражении select

EDIT: см. Приведенный выше код. Может быть, потому, что

Вам нужно обернуть свой код в оператор select !

Операция с параметром не будет работать без тега select вокруг него:

 <html> <body> <select> <!-- Start the select statement --> <!-- Your Code --> <?php $num = 4; for ($i=1; $i < 10; $i++) { ?> <option value="<?php echo $i; ?>" <?php if($num === $i){ echo "selected"; }; ?>><?php echo $i; ?></option> <?php } ?> <!-- End your code --> </select> <!-- End the select statement --> </body> </html> 

После редактирования вы увидите, что это ваша главная проблема:

 $date = 2015-02-30; 

Это не то, что вы думаете. Он должен быть указан следующим образом:

 $date = '2015-02-30'; 

В противном случае $date не является строкой, это математическое выражение, которое вычисляет значение (int) 1983 , поэтому substr($date, 8, 2); будет оцениваться как false , а не 30 , а затем, очевидно, ваш выбор не будет выбран.