タグ

ブックマーク / blog.fkoji.com (3)

  • 全角マイナスと全角ハイフンと半角マイナスと半角ハイフン - F.Ko-Jiの「一秒後は未来」

    ホットペッパーAPIで提供されるお店の住所フォーマットがかなりバラバラでハマってしまいます。最もハマってしまうのが「全角ハイフン」の存在。 以下にハイフンとマイナスの全角文字と半角文字を列挙してみます。どれがどれだか分かりますか? 「‐」、「-」、「-」、「-」 プログラムでは、正規表現で全角マイナスと半角マイナス(これは半角ハイフンも同じ文字)をreplaceの対象としていました。そのため全角ハイフンの含まれる住所だけは正しくreplaceされず、その結果ジオコーディングできていませんでした。 これに気づいたのは、問題の住所をencodeURIComponentにかけてデバッグ表示させたときです。半角マイナスであればURIエンコードをしてもそのまま表示されますが、問題の住所のハイフンは%つきでエンコードされてしまったのです。 ちなみに先ほど列挙した4つの回答ですが、左から「全角ハイフン」

    全角マイナスと全角ハイフンと半角マイナスと半角ハイフン - F.Ko-Jiの「一秒後は未来」
  • 携帯サイトをUTF-8で出力するかShift_JISで出力するか - F.Ko-Jiの「一秒後は未来」

    携帯サイトをUTF-8で出力しようかShift_JISで出力しようか悩んでいました。 超手抜きでウェブサイトをモバイル対応 2008 – 15Pubを読むと「UTF-8でも大丈夫」とあるのですが、ウノウラボ Unoh Labs: 携帯サイト作成時のXHTMLでの相違点では「文字コードはShift_JIS」と書いてあります。 ネットで調べてみるとポイントになっているのは au の仕様で、公式ページには「EZwebでサポートする文字コードはShift-JISです」とあるにも関わらず、UTF-8でも文字化けすることなく表示できてしまうとのこと。 色々迷った挙げ句、「楽だから」という理由でまずはUTF-8で出力することにしました。 HTMLのContent-Typeは以下のように記述。 <meta http-equiv="content-type" content="application/xht

    携帯サイトをUTF-8で出力するかShift_JISで出力するか - F.Ko-Jiの「一秒後は未来」
  • auはContent-Typeのヘッダの間違いに厳しい? - F.Ko-Jiの「一秒後は未来」

    先ほどの「携帯サイトをUTF-8で出力するかShift_JISで出力するか」の続きというかそれ以前の話。 auで「文字化け」の問題が発生する以前に、「『リクエストされたページは表示できません』と出て表示できないよ」と言われました。 ドコモやソフトバンク端末では表示できていて、さらにauのエミュレータ(現在は公開が停止されているOpenwave SDK6.2K)で見ても特に問題がないので、何が原因なのかさっぱり。 ネットで色々調べてみると、どうもContent-Typeヘッダあたりに間違いがあるときに、「リクエストされたページは表示できません」と出ることがわかりました。アクセスログを見ると確かにアクセスはきています。そこでソースコードをよく調べてみると、 header('Content-Type: application/xhtml+xml charset=' . MOBILE_ENCODI

    auはContent-Typeのヘッダの間違いに厳しい? - F.Ko-Jiの「一秒後は未来」
  • 1