タグ

文字コードに関するbigwestのブックマーク (22)

  • RDS MySQL5.5.33 で『utf8mb4』(4バイト対応UTF-8文字コードセット)を試してみた | DevelopersIO

    ちょっとした小ネタです。RDS(MySQL)に於いて、『utf8mb4』に対応した環境が作成出来るか/対応しているかという件で確認する機会がありましたので、当エントリに備忘録的として記しておきます。 目次 『utf8mb4』とは RDS(MySQL)環境の用意 『utf8mb4』に対応したパラメータグループを作成・適用 『utf8mb4』関連パラメータグループ適用後の内容確認 『utf8mb4』とは この『utf8mb4』というもの、文字コードの一種で、UTF8で4バイト文字を扱う事が出来るものらしいです。 MySQLで4バイトのUTF-8文字を扱ってみる - HHeLiBeXの日記 正道編 また、それぞれのバージョンで扱う事が出来るCharacter Setの一覧も以下にメモしておきます。 MySQL :: MySQL 5.1 Reference Manual :: 10.1.13 Ch

    RDS MySQL5.5.33 で『utf8mb4』(4バイト対応UTF-8文字コードセット)を試してみた | DevelopersIO
  • Linux 上で Windows 向けの zip ファイルを作る - ~fumi/ChangeLog

    目的: Linux 上で日語ファイル名をもつファイルを Windows で文字化けしないかたちで zip にまとめる。 方法: convmv でファイル名を cp932 に変換してから圧縮する。 ディレクトリ foo 以下に日語ファイル名を持つ ファイルがある場合は以下のとおり。 convmv --r --notest -f utf8 -t cp932 foo zip -r foo.zip foo (追記) 以前は rubyzip を使って文字コードを変換しながら, 圧縮・展開するスクリプトを書いてた. - rubyzip [2004-05-10-1]

  • 正規化 - odz buffer

    ref:ウノウラボ Unoh Labs: Mac OS X上のUnicode ref:はてなブックマーク - ウノウラボ Unoh Labs: Mac OS X上のUnicode 符号化方式と正規化の問題を激しく混同した解説をどうも。ブックマークコメントをみても正しく問題が伝わっていないように思える。というか、書いた人がきちんと認識してないんじゃないか。 2007年09月04日 omaya omaya 誰が悪いんだろう。 強いて言えば NFD な Unicode の入力に対してまともに動かない Web アプリじゃないかな。 2007年09月04日 mattn mattn macosx, unicode ブラウザのバグだしバージョンで処理しないといけないのかな... ブラウザのバグではない。 しかもややこしいことに、UTF-8で濁点をあらわすコードは「U+309B」(KATAKANA-HIR

    正規化 - odz buffer
  • PHP5.4のhtmlspecialcharsに非互換問題

    第3引数を指定していない場合の影響前述のように、htmlspecialchars関数の第3引数を指定していない場合、PHP5.3までは、文字エンコーディングがISO-8859-1が指定されたとみなされます。この場合、入力内容にかかわらず不正な文字エンコーディングと判定されることはありません。したがって、文字エンコーディングのチェックが働かない代わりに、エラーになることもありませんでした。 これに対して、PHP5.4の仕様により文字エンコーディングがUTF-8とみなされた場合に、Shift_JISやEUC-JPの2バイト文字が入力されると、高い確率で「UTF-8として不正」というエラーになり、htmlspecialchars関数の出力は空になります。つまり、プログラムが正常に動作しません。 htmlspecialchars関数の第3引数を指定しておらず、内部文字エンコーディングがShift_

  • PHP 5.4の文字エンコーディング設定

    (Last Updated On: 2018年8月13日)PHP 5.4 RC1が公開されています。PHP 5.4のリリースが近いです。PHP 5.3の–enable-zend-multibyeの問題でバグレポートをした関係でinternals MLでメールのやり取りをして分った事とその他をまとめておきます。主にSJISを使う場合の注意点です。間違い・勘違いもあるかも知れないので気が付いたらコメントを下さい。 PHP 5.4はデフォルトの内部エンコーディングがISO-8859-1になる SJISでコードを書く場合はzend.script_encoding=SJISを書く SJISでコードを書く場合は内部エンコーディングをSJIS(mbstring.internal_encoding=SJIS)に設定する SJISで出力する場合はmbstring.http_output=SJIS (outp

    PHP 5.4の文字エンコーディング設定
  • いろんな日本語EUCについてのまとめ - 帰ってきた💫Unicode刑事〔デカ〕リターンズ

    語EUC(EUC-JP)にはいろいろあって頭がこんがらがってきたので、サルにもわかるように(つまり、自分があとから見て理解できるように)まとめてみた*1。まず、EUC-JPにはどんな種類があるのだろうということで、わたしの環境で実装例を確認できるものをピックアップしてみた。下図のうちeucJP-openとIANAのEUC-JPについては身近な実装例を思いつかなかったが、これを外すわけにはいかないだろうと思って入れておいた。 各EUC-JPのレパートリをまとめたのが、下図。eucJP-openには上図に示したようなバリエーションがあるが、レパートリは共通。「JIS X 0208の国際基準版・漢字用8ビット符号 + JIS X 0201片仮名」については、これを一言で表現できる呼称を思いつかないので、以下の図では仮に「TextEdit」と表記する。 下図は、各EUC-JPのレパートリと符号

    いろんな日本語EUCについてのまとめ - 帰ってきた💫Unicode刑事〔デカ〕リターンズ
  • PHPの SJISと SJIS-WINの違い

    SJIS-WINとは? PHPで文字コードとして「SJIS-WIN」を指定すると、Microsoftが拡張したShift_JISであるWindows-31Jが使われる。 Windows-31Jは、Microsoftが「JIS X 0208-1990」をベースに、NECとIBMの独自拡張文字の一部(一般的にはSJISの「機種依存文字」と呼ばれる?)を取り込んだ文字コード。 (参考:Microsoftコードページ932 - Wikipedia) SJISとSJIS-WINで何が違うの? SJIS-WINの方が文字が多い。 よく使うところでは、下記のような文字はSJISーWINにはあるがSJISにはない。 丸数字 (①②③...⑳)ローマ数字 (ⅠⅡⅢ...Ⅹ、ⅰⅱⅲ...ⅹ)カッコ付きの株 (㈱)はしご高[はしごたか] (髙)たつ崎[たつさき、たちさき] (﨑) SJIS-WINにはあるがSJ

  • Just another Ruby porter, 2010-12-b

    ■ youtube-dl 2010.12.09 Changes: This release fixes support for YouTube after the recent site changes that broke the program. In addition, it adds support for depositfiles.com, fixes a few minor bugs, and adds a few minor features. ■ unzip unzipを日語対応版にした。ベースは5.52なんだな。-I/-Oで入出力のcharsetを指定できる。 オリジナル: % unzip UnZip 6.00 of 20 April 2009, by Debian. Original by Info-ZIP. Usage: unzip [-Z] [-opts[modi

  • KLab

    ご指定のページが見つかりませんでした URLの変更、もしくはページが削除された可能性があります。 お手数ですが、以下のリンクから目的のページをお探しください。

    KLab
  • 文字コードに起因する脆弱性を防ぐ「やや安全な」php.ini設定

    補足 この記事は旧徳丸浩の日記からの転載です(元URL、アーカイブはてなブックマーク1、はてなブックマーク2)。 備忘のため転載いたしますが、この記事は2010年9月27日に公開されたもので、当時の徳丸の考えを示すものを、基的に内容を変更せずにそのまま転載するものです。 補足終わり PHPカンファレンス2010にて「文字コードに起因する脆弱性とその対策」というタイトルで喋らせていただきました。プレゼンテーション資料をPDF形式とslideshare.netで公開しています。 文字コードのセキュリティというと、ややこしいイメージが強くて、スピーカーの前夜祭でも「聴衆の半分は置いてきぼりになるかもね」みたいな話をしていたのですが、意外にも「分かりやすかった」等の好意的な反応をtwitter等でいただき、驚くと共に喜んでいます。土曜にPHPカンファレンスに来られるような方は意識が高いというの

  • 文字の情報を調べるためのブックマークレット - IT戦記

    ウェブで見かけた文字が、やたら気になることがあるので 作ってみました javascript:location.href = 'http://www.fileformat.info/info/unicode/char/' + (function(r){ var n = r.startContainer; var p = r.startOffset; return (n.nodeType == 3) ? n.nodeValue.charAt(p) : n.childNodes[p].textContent.charAt(0); })(getSelection().getRangeAt(0)).charCodeAt(0).toString(16) + '/index.htm'; void(0); 使い方は簡単 気になる文字を選択してブックマークレットを実行するだけ! 対応ブラウザ HTML5 t

    文字の情報を調べるためのブックマークレット - IT戦記
  • PHPで UTF-8←→SJIS の変換を行う場合の注意:地方で活動するweb制作者の日々を綴るblog

    2007年03月01日03:25 カテゴリ技術-PHP PHPUTF-8←→SJIS の変換を行う場合の注意 php で文字コード変換をする場合は mb_convert_encoding("ほげほげ", "SJIS", "UTF-8")といった感じで変えられますが mb_convert_encoding("郄橋", "SJIS", "UTF-8")とやると文字化けします。 つまり、Shift-JISの拡張文字をUTF-8 (から|へ) 変換しようとすると化けるらしい。 拡張文字の代表としては「磲」とかも。 あとは「?????」のローマ数字の類もそう。 解決としては mb_convert_encoding("郄橋", "SJIS-win", "UTF-8")これだけ? って感じですが、これで問題なく変換できます。 これだけでなぜ通るのか、ちょっと調べたけれどよくわかりませんでした。 詳し

  • PHP+PostgreSQLでEUC-JP出力は非常識!? 〜windowsでIBM拡張文字が文字化け:地方で活動するweb制作者の日々を綴るblog

    2007年07月10日23:27 カテゴリ技術-PHP PHP+PostgreSQLでEUC-JP出力は非常識!? 〜windowsでIBM拡張文字が文字化け PHPでプログラムを作成する場合、文字コードをEUC-JPで作成するケースが多いと思います。 SJISでソースは書けませんし、UTF-8は正直まだなじみが薄いといえます。 しかし... 今回の結論(突然ですが) PHP+PostgreSQLの環境でEUC-JPを使うと、Windows環境においてIBM拡張文字を正しく表示できずに文字化けを起こす。 表示させるには、出力文字コードをUTF-8やSJISとすること。 IBM拡張文字とは? JIS基漢字(JIS X 0208)以外に定義される拡張文字のことです。 IBMによって定義された「IBM拡張文字」 (115〜119区) と、NECが自社のPC-9800シリーズ用に定義した「NEC

  • [php] mb_convert_encoding と UTF-8 の誤変換問題(株式会社コネクティボしゃいん☆のブログ)

    このような誤変換を防ぐための一つの手法としてよく挙げられているのが、「sjis-win」または「eucjp-win」というエンコーディングを使って回避する方法である。 $s_in = "~"; $s_out = mb_convert_encoding( mb_convert_encoding( $s_in, "sjis-win", "UTF-8" ), "UTF-8", "sjis-win" ); echo ($s_in == $s_out) ? "OK" : "NG"; 表示結果: OK このようにすると、上記表に挙げた文字を mb_convert_encoding を使って変換しても、正しく元に戻すことができる。 「sjis-win」または「eucjp-win」を使えば解決?と思いきや、逆も真なりとはこのことかと思うような問題も存在する。たとえば、 $s_in = "〜"; $s_ou

    [php] mb_convert_encoding と UTF-8 の誤変換問題(株式会社コネクティボしゃいん☆のブログ)
  • PHP の mbstring に関するメモ

    このページについての説明・注意など PHP の mbstring 拡張モジュールについて調べてみました。mbstring 拡張モジュールは、PHP マニュアル : マルチバイト文字列関数 (mbstring) にも書かれていない機能や制約が多くあります。そのあたりをソースコードを確認しながらまとめてみました。 更新内容については、更新履歴を参照してください。 ソースコードの確認は主に PHP 5.2.5 〜 PHP 5.3.0 で行いました。PHP 4.x に対する記述もありますが、細かいバージョン等については十分に確認できていないものもあります。このページを読んで、間違い、誤字、脱字などがを見つけましたら、はてなの日記、または、メールなどで教えてください。 mbstring を使用する方法 静的ライブラリとして組み込む方法 共有ライブラリとして使用する方法 Windows 環境の場合 P

  • UCS-2とUTF-8

    最終更新 2003-11-11 UCSとUTF ユニコードで文書を作るとき,文字コードの方式が2種類,あるいはそれ以上あることに気が付かれるかもしれません。例えば,一つはUnicodeとあるのに対し,もう一つはUnicode (UTF-8)と表記されているかもしれません。この2つは,また,その違いは何でしょうか(前者はUTF-16の一形態なのですが…)。 UCS-2とUCS-4 ユニコードが採択されることになった多言語用の文字コードセット,ISO-10846-1は,16ビット(16桁の二進数)でそれぞれの文字を表します。それをUCS-2 (Universal Character Set coded in 2 octets,「2つのオクテットでコードされたユニバーサル文字セット」)と称します。オクテットとは文字長の単位としての8ビット(8桁の二進数)のことです。 ユニコードの特定の文字は,例

  • ke-tai.org » Blog Archive » PHPで絵文字を壊さずに文字コードや全角半角変換を行う方法

    PHP絵文字を壊さずに文字コードや全角半角変換を行う方法 Tweet 2007/11/26 月曜日 matsui Posted in PHP | 1 Comment » 通常「mb_convert_encoding」や「mb_convert_kana」を使うと、iモードやEZWebの絵文字(SJIS形式)は壊れてしまいます。 壊れてしまう例 $str = '絵文字[晴れ]'; $str = mb_convert_encoding($str, 'EUCJP', 'SJIS'); $str = mb_convert_encoding($str, 'SJIS', 'EUCJP'); // 出力 echo $str; 例:通常のコンバートの場合 しかしちょっとしたことで、絵文字の破壊を防ぐことができます。 文字コードを指定するときに SJIS EUC-JP ではなく、 SJIS-WIN EUCJ

  • 日本語ファイル名

    まだよくわかっていないことが多いので,お気づきの点がありましたらご教示ください。 [2006-05-08] WindowsのIEで化けていた(^^;)ので直しました。 [2007-03-14] IE5/6はUTF-8をURLエンコードした名前でもOKだそうです(Thanks: 白水さん)。 問題点 日語ファイル名の扱い方はブラウザによって異なり,たいへん厄介です。 まず,ファイル名はURLのパスとして与えることができます: <a href="fakefile.php/日語ファイル名.txt">クリックしてね</a> この場合,ブラウザは「日語ファイル名.txt」というファイルを見ているつもりになりますが,サーバ側では fakefile.php を実行し,/日語ファイル名.txt はその実行の際に環境変数 PATH_INFO として渡されるだけです。 また,ファイル名はHTTPヘッダ

  • Text Encodings in VFS

    Q: Mac OS X 用にファイルシステム(VFS)プラグインを書いています。テキストコードを正しく処理するにはどうすればよいでしょうか? A: Mac OS X では、VFS API のファイル名は、定義上、正規分解による Unicode 文字で、UTF-8 を使ってエンコードされています。このことが、いくつかの興味深い問題を引き起こしています。 合成済み文字と分解された文字 この Q&A は、「合成済み Unicode 文字」および「分解された Unicode 文字」という用語を熟知していることを前提としています。これらの用語をよく知らない場合は、DTS Q&A 1235 Converting to Precomposed Unicode(合成済み Unicode への変換)に簡単な説明が掲載されています。 重要: この Q&A で使われている「分解された」および「合成済み

  • ウノウラボ Unoh Labs: Mac OS X上のUnicode

    Firefoxは内部的に変換処理を行うようになっているようです。 問題はSafariとOperaですね。 選択されたファイルのパスからJavaScriptで ファイル名を抜き出してタイトルに設定する部分で、 正しく扱えるような文字コードに変換することにしたいと思います。 基的な流れとしては、UTF-8-MAC特有の「U+3099」(COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK)、 「U+309A」(COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK)がファイル名に含まれている場合は、 その前の文字と結合して濁音・半濁音の文字にしてあげればいいでしょう (ひらがな・カタカナのみの暫定的な対処に過ぎませんが)。 変換用の文字テーブルを用意して、逐一変換していくかたちにしたいと思います。 というわけ