###前提・実現したいこと
PHPで_POSTの値を連想配列から探し一致していたらreturnへ返したい
かれこれ4日くらい悩みましたがお手上げです。
どうかお知恵をお貸しください・・。
表題の通りなのですが、PHPで_POSTの値を連想配列に一致していたら、
$valを拾ってreturnに返したいです。
さらに、if文で分岐していますが、['addr11']に値がなければ['addr1']を見て情報があれば
値を返すという感じです。
$_POST['addr1']の値は、ajaxzip3のアレです。
フォームで都道府県を選んだら料金も出てくるイメージです。
イメージ通りになかなかいかないものですね・・。
###発生している問題・エラーメッセージ
現在のコードですと、茨城県の300がフォームの結果に出ています。
###該当のソースコード
function souryou($price){ $todofuken = array( '北海道' => 1296, '青森県' => 972, '茨城県' => 300, ); foreach ($todofuken as $key => $val){ if(array_search($_POST['addr11'], $key) !== false){ $souryou = "$val"; }elseif (array_search($_POST['addr1'], $key) !== false) { $souryou = "$val"; } } return $souryou; }
###試したこと
恐縮ですが、PHPを始めたばかりです。
PHPのサイトなどを見つつ読みつつしてみましたが、造詣に乏しいです。
###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報
$_POST['addr1']、$_POST['addr11']が出力する値です
AjaxZip3.PREFMAP = [ null, '北海道', '青森県', '岩手県', '宮城県', '秋田県', '山形県', '福島県', '茨城県', '栃木県', '群馬県', '埼玉県', '千葉県', '東京都', '神奈川県', '新潟県', '富山県', '石川県', '福井県', '山梨県', '長野県', '岐阜県', '静岡県', '愛知県', '三重県', '滋賀県', '京都府', '大阪府', '兵庫県', '奈良県', '和歌山県', '鳥取県', '島根県', '岡山県', '広島県', '山口県', '徳島県', '香川県', '愛媛県', '高知県', '福岡県', '佐賀県', '長崎県', '熊本県', '大分県', '宮崎県', '鹿児島県', '沖縄県' ];
回答1件
あなたの回答
tips
プレビュー