QueryStringを取得するとき「&」をパラメータ内の文字列として取得する方法はあるでしょうか。

言語はPHPです。

QueryStringが「?title=hogehoge&url=hogehoge」
このとき
$_GET[title]で「hogehoge&url=hogehoge」を取得するという感じです。

$_GET[title]、$_GET[url]それぞれ取得してくっつければいいかもしれませんが
パラメータの項目数が多い(&項目数が増えていく予定だったりする)ので一度に取りたいのですが。

回答の条件
  • 1人2回まで
  • 登録:2008/10/20 09:20:15
  • 終了:2008/10/20 09:54:20

ベストアンサー

id:y-kawaz No.1

y-kawaz回答回数1421ベストアンサー獲得回数2262008/10/20 09:35:13

ポイント55pt

URLエンコードしてやればよいです。

urlencode という関数で変換できます。

<a href="example.php?title=<?php echo urlencode('hogehoge&url=hogehoge') ?>">foo</a>

↑これは以下のような出力をします。

<a href="example.php?title=%3Ftitle%3Dhogehoge%26url%3Dhogehoge">foo</a>
id:dedara

なるほどー。

ありがとうございました。

2008/10/20 09:53:15

その他の回答(1件)

id:y-kawaz No.1

y-kawaz回答回数1421ベストアンサー獲得回数2262008/10/20 09:35:13ここでベストアンサー

ポイント55pt

URLエンコードしてやればよいです。

urlencode という関数で変換できます。

<a href="example.php?title=<?php echo urlencode('hogehoge&url=hogehoge') ?>">foo</a>

↑これは以下のような出力をします。

<a href="example.php?title=%3Ftitle%3Dhogehoge%26url%3Dhogehoge">foo</a>
id:dedara

なるほどー。

ありがとうございました。

2008/10/20 09:53:15
id:pahoo No.2

pahoo回答回数5960ベストアンサー獲得回数6332008/10/20 09:37:17

ポイント15pt

クエリー文字全体は $_SERVER[QUERY_STRING] で取得できます。


逆に質問なのですが、求めている機能は

"?title=abc&url=123" のときは "abc&url=123"

と取得し、

"?url=123&title=abc" のときは "abc"

を取得したいという要件ですか?

つまり、クエリー文字列の "title=" 以降、末尾までを取得したいということでしょうか。

id:dedara

回答ありがとうございました。

要件はそのとおりです。

2008/10/20 09:52:19

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません