2

ここに私が使用しているコードがあります:

$from=urldecode($_GET['from']);
$str =urldecode("%2B");
echo "$str<br>";
echo "$from<br>";

URL の一部を次に示します。from=%2B995594262653

なぜこれが反響するのですか

+
 995594262653

? (番号の前にスペースがあることに注意してください)。$str関数がまったく機能するかどうかを確認するために使用しています。どうやら、それは単純な%2B. 何が問題になる可能性がありますか?

4

1 に答える 1

5

これは機能していますが、PHP が$_GET 配列に格納されたデータを自動的に URL デコードすることを認識する必要があります。あなたはそれを2回やって、入力をさらに変換しています。

スクリプトが実行されると、$_GET['from']次が含まれます+995594262653

その値を urldecode で実行すると、+がスペースに変換されます。

于 2012-11-04T22:17:49.510 に答える