お世話になります。初歩的な質問で申し訳御座いません。
入力したキーワードを元に、配列にした都道府県の番号を取得するプログラムを書いているのですがつまずいています。
例えばユーザーが「北海道」と入力したとき、事前に配列に入れた北海道の都道府県番号「1」を取得するために下記のように書き問題なく動作しています。
$keyword = "北海道";//例 $pref = array(1=>'北海道',2=>'青森',3=>'岩手',4=>'宮城'・・・・ $prefno = array_search($keyword, $pref);
しかし検索の揺れを考慮して「北海道」以外に「札幌」「苫小牧」「函館」等のキーワードでも$prefnoで「1」を表示させたいのですが、子の配列を作り,foreach等を使ってすべて展開するしか方法はないでしょうか?
【希望する動作】
'北海道','札幌','苫小牧'いずれのキーワードでも$prefに「1」を返したい
$pref = array(1=>('北海道','札幌','苫小牧'),2=>'青森',3=>'岩手',4=>'宮城・・・
今後キーワードなどを一層増やしていくとメモリ等に余計な不可を掛けるのではと思い、実装前に質問をさせて頂きました。
また現在完全一致のみヒットするようにしており、「福」と入力しても「福島」「福井」「福岡」は当然ヒットしないのですが、配列を
$pref = array(a=>'福井県',b=>'福島県',c=>'福岡県')
とした場合「福」ではどれにもヒットさせず「福井」では「$pref = a」を返すような正規表現は可能でしょうか?
宜しくお願い致します。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。