###前提・実現したいこと
初心者で申し訳ありません。
都道府県すべてのあるデータを取得しているのですが、
コードをご覧のとおり、東北地方のeq()変数は(2,4,5)で、関東が(1,3,4)、
その他の各地方もあり、それも下に続いています。[ex.関西(0,2,3) 四国(3,5,6) 近畿(4,6,7)...]
このまま全て書くと長くなってしまうので行を減らすことはできないでしょうか。
URLも「http://」と「.com/」は一緒なので省略?と
いうのでしょうか、
そういった感じの表記はできるのでしょうか。
間はローマ字で県名が入ります。
よろしくおねがいします。
$switch= '北海道'; //地域によって異なるため変数とURLを定義 switch ($switch){ case '北海道': $eq = array(2,4,5); // $url = 'http://hokkaidou.com/'; break; case '東京': $eq = array(1,3,4); // $url = 'http://toukyou.com/'; break; case '青森': $eq = array(2,4,5); $url = 'http://aomori.com/'; break; case '千葉': $eq = array(1,3,4); $url = 'http://chiba.com/'; break; case '秋田': $eq = array(2,4,5); $url = 'http://akita.com/'; break; case '埼玉': $eq = array(1,3,4); $url = 'http://saitama.com/'; break; }
追記
下記のコードで無事に短くすることができました。
もうひとつ質問なのですが、
$pref_data = array( '北海道' => array(2,4,5,'hokkaidou'), '東京' => array(1,3,4,'toukyou')); $eq = $pref_data[$switch]; $url = 'http://' . array_pop($eq) . '.com/';
↓このような代入?はできないのでしょうか。
$a = '2,4,5' $b = '1,3,4' $pref_data = array( '北海道' => array($a,'hokkaidou'), '東京' => array($b,'toukyou')); $eq = $pref_data[$switch]; $url = 'http://' . array_pop($eq) . '.com/';
回答4件
あなたの回答
tips
プレビュー