与えられた両方の例は、目的ので機能しません$_GET['email']
。
最初の例でhttp://www.test.com/?jjjanu@gmail.com&tid=RetEm_Welcome_resp_05232012
は、電子メールアドレスの「キー」がないため、それを取得する唯一の方法は、各クエリ文字列パラメータを反復処理し、キーなしの値が電子メールアドレスであると想定するか、正規表現を実行することです。それに一致します。(非常に)基本的なものは次のとおりです。
$email = '';
foreach ($_GET as $key => $val) {
if (strpos($key, '@') && ($val == '')) {
// assume this is an email address
$email = $key;
break;
}
}
2番目の例、http://www.test.com/?email = jjjanu@gmail.com&tid=RetEm_Welcome_resp_05232012
「email」という単語の後のスペースは名前に含まれます。次の方法で取得できます。
$email = $_GET['email '];
?email=[email address]
通常のクエリ文字列が機能しない特定の理由はありますか?