CakePHPについて書くことが多いです。MySQLやHTML、CSS、Javascriptや、サーバー周りについても書くことがあります。分からないことも多いので、記事を読んで助言してくれる人が現れるのを期待している毎日です。波平「おいおい何を言ってるんだい、マチルダ。波平「人は誰しも違って当然さ。それは僕たちの幸せにとって何の障害にもならないよ。波平という名前の男性がアメリカンな感じだと随分違和感ありますねぇ......やはり波平と聞くとどうしてもあの国民的人気アニメに出てくる双子の弟を思い出してしまうからなんでしょうね。チルダというのは、よく「にょろ」とか「ほにゃらら」とかの代名詞で表現される「~」の字のことです。マチルダというのはあの国民的人気アニメで輸送機に乗っていた女性のことです。冒頭の波平と会話しているマチルダとは一切何の関係もありません。波ダッシュっていうのも「~」のことです。これは同じ文字に対して別々の言い方がある、というわけではなくて、両者は違う文字です。一般的な日本語キーボードの場合、「~」を打ちたいときはたぶん、数字の0キーの隣の隣くらいにあるキーをShiftキーと一緒に押すことで実現できます。それはWindowsパソコンでもMacパソコンでも同じ。WinPCで打った場合とMacPCで打った場合、実は別々の文字が出てきてしまうんですね。それがチルダと波ダッシュです。あ、ちなみに全角のときの話です。半角のときはどっちも一緒......かな?同じところに配置されている同じキーを打つことで同じ文字が出てくるんだから、そりゃ当然同じ文字だと普通は思いたくなりますよね。WinPCで「あ」と打った場合もMacPCで「あ」と打った場合も、同じ「あ」になるもん。URLエンコードしたって同じになるもん。実は、WinPCで打った場合は全角チルダが、MacPCで打った場合は波ダッシュが出力されてしまうようなんです。論より証拠ってことで、実際に打った文字を見比べてみましょうか。WinPC(全角チルダ):~MacPC(波ダッシュ):〜どうでしょうか。MacPCで見た場合、上の2つは同じに見えます。マックの方のにょろが何かにじんだ感じしません?これは文字コードがUnicode、つまりUTF-8とかの場合に起こるみたいですね。SHIFT-JISでは起こらないっぽいので、例えばEXCELで2つの文字を見た場合はWinPCで見ても同じ文字に見えます。何でこんなことになってしまったのかはWikiってもらうとして、とりあえず一見同じなのに実は違う文字である彼らがどんな問題を引き起こすかというと、全文一致なんかで引っかけられないっていう問題が発生したりしなかったりするんですね。ゆーか発生した、今回。解決策としてはWinPCで全角チルダを入力するようにするか、MacPCで波ダッシュを入力するようにするかって感じですかね。どんな日本語入力システム使ってるかにもよると思うんですけど、僕のWinPCやMacPCは変換能力がだいぶ弱いらしいので、WinPCの方でチルダとか打っても変換候補に記号のチルダは出てきてくれないし、MacPCの方もまた然りなので、自分で辞書登録的なことをやらないとダメみたいですが。いえ、不特定多数の方が入力することを想定されるウェブサービスなんかは、あらかじめどっちかに統一するルールを決めておくってのも難しいかもしれないので、システム的に強制的にどちらかの文字に変換してしまうのが良いのかもしれないですね。