例えば
https://highfivecreate.com/example.html?category=test
このURLには「category」というパラメーターがあり、「test」という値がセットされています。
値に対するキーを取得するphpはあるのに、逆がないと思ってかなりハマりました。
なんのことはなくforeachでいきました。よくやっているのになんで忘れるんでしょうね。。。
やりたかったのは、配列をデータとして持っている変数に$parameterの特定のキーにpreg_matchで狙ったワード(今回は”cat=”)があった場合、そのワードを切り出して値にいれて返すというもの。
preg_splitは”=”で区切って配列に保存されているので、2個目に保存された配列を変数$cat_nameに代入しています。
foreach($parameter as $key => $value) { //変数parameterのキーに対して繰り返し処理を実行 if(preg_match("/cat=/", $value)) { $keywords = preg_split("/=+/", "$value"); $cat_name = $keywords[1]; } else { $cat_name = 0; } }
これで数時間悩みました。。。