送信された rawurlencode() が直接出力と異なるのはなぜですか?
if($_POST['submit']){
echo $_POST['name']."=
";
echo rawurlencode($_POST) ['name']);
}
echo rawurlencode("女性");
このように「女性」を送信してください出力: %C5%AE%C8%CB
そして、rawurlencode (「女性」) の直接出力: 再度: %E5%A5%B3%E4%BA%BA
これはなぜですか?
-----解決策---------------------------- -
提出物が gbk であるため、php ファイルは utf8 です。
------解決策------------------
もう一つ注意してください、送信されたフォームは urlencode ではありません。 rawurlencode ですが、JS の URIcomponentEncode (このように綴られますか) は PHP の rawurlencode と同等です。主な違いは、スペースが + であるか %20 であるかです。
次のように正しい結果を確認したいとします。
PHP コード