質問: ### 前提・実現したいこと phpで動的に都道府県のプルダウンリストを作ってその初期値を東京にしたい場合どうすればよいでしょうか? ### 該当のソースコード ``` ".$options[$i].""; } ?> ``` 静的にhtmlだけの場合なら東京のoptionにselectedつけたらいいのですがphpとなるとどうやっているのでしょうか?
回答: (敢えてコード例は書きません) * 東京都の時のみ selected も出力する という条件分岐をかけたPHPコードをかけばいいですね。 コメント返信後の追記 =========== 条件分岐の書き方がわからないんでしょうか。 もしそうであれば非常に基礎的なことなので回答を得るより先にそちらを学習されたほうが良いように思いますが。。 例えばこういった書き方ができるかと思います。 ``` echo "".$options[$i].""; ``` の部分を ``` echo "".$options[$i].""; ``` 他の方も既に同様の書き方をされていますが「三項演算子」というのを利用した場合を上げました。 追記 === if文を使った例としてはこんな感じにできるかと思います。 ``` $options = array('北海道','青森県','岩手県','宮城県','秋田県','山形県','福島県','茨城県','栃木県','群馬県','埼玉県','千葉県','東京都','神奈川県','新潟県','富山県','石川県','福井県','山梨県','長野県','岐阜県','静岡県','愛知県','三重県','滋賀県','京都府','大阪府','兵庫県','奈良県','和歌山県','鳥取県','島根県','岡山県','広島県','山口県','徳島県','香川県','愛媛県','高知県','福岡県','佐賀県','長崎県','熊本県','大分県','宮崎県','鹿児島県','沖縄県'); $selected = '東京都'; // 汎用化のためにはこのように変数化しておいたほうがいいと思います for ($i=0; $i < count($options); $i++) { // 付与する属性を分岐 if($options[$i] == $selected){ $arg = ' selected'; } else { $arg = ''; } echo '".$options[$i].""; } ``` もしくは ``` $options = array('北海道','青森県','岩手県','宮城県','秋田県','山形県','福島県','茨城県','栃木県','群馬県','埼玉県','千葉県','東京都','神奈川県','新潟県','富山県','石川県','福井県','山梨県','長野県','岐阜県','静岡県','愛知県','三重県','滋賀県','京都府','大阪府','兵庫県','奈良県','和歌山県','鳥取県','島根県','岡山県','広島県','山口県','徳島県','香川県','愛媛県','高知県','福岡県','佐賀県','長崎県','熊本県','大分県','宮崎県','鹿児島県','沖縄県'); $selected = '東京都'; // 汎用化のためにはこのように変数化しておいたほうがいいと思います for ($i=0; $i < count($options); $i++) { // 出力箇所そのものを分岐 if($options[$i] == $selected){ echo '".$options[$i].""; } else { echo ''.$options[$i].""; } } ``` 蛇足でした。