• ベストアンサー

PHPのエンコードは特殊?

$a="あ"; これを%E3%81%82とエンコードしたいのですが、 $b=urlencode($a); echo $b; とすると、%82%A0と出てきます。 %E3%81%82と表示させるにはどのように記述するのでしょうか? FLASHを少しかじっていてAS2ではescapeで対応できるので、 PHPのエンコードが変なのでしょうか。 分かる方いましたらご教授をお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

ソースの文字コードがShift-JISになっていませんか? Shift-JISの場合は「%82%A0」、UTF-8の場合は「%E3%81%82」になります。

wggtanp
質問者

お礼

お返事ありがとうございます、まさにそれでした。 全く気付きませんで・・・助かりました!

その他の回答 (1)

  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.2

>$a="あ"; >これを%E3%81%82とエンコードしたいのですが、 >とすると、%82%A0と出てきます。 >%E3%81%82と表示させるにはどのように記述するのでしょうか? urlencode する前のエンコーディングがShiftJISになってますね。 UTF-8に変換した上で urlencode かけてください。

wggtanp
質問者

お礼

お返事ありがとうございます、まさにそれでした。 全く気付きませんで・・・助かりました!

関連するQ&A