タグ

ブックマーク / dayflower.hatenablog.com (3)

  • UTF8 フラグあれこれ - daily dayflower

    UTF8 フラグについてわかってるつもりだったんですが,utf8::is_utf8 considered harmful - Bulknews::Subtech - subtech を読んで混乱したので,自分なりにまとめてみました。間違いがありましたらご指摘よろしく。 まとめ スカラー変数の内部表象の状態を示すものとして UTF8 フラグというものがある スカラー変数は(リファレンス等は別として)下記のものを格納できる (A) 文字列(内部表象: UTF-8) (B) 文字列(内部表象: ISO-8859-1) (C) バイナリ列 純粋なバイナリストリーム(画像ファイル等)かもしれないし, UTF-8 octet stream かもしれないし, CP932 octet stream かもしれないし,etc, etc ... Perl は(後方互換性確保などの理由から)ISO-8859-1

    UTF8 フラグあれこれ - daily dayflower
  • DBIx::Class 次の一歩(←いまココ) - daily dayflower

    DBIx::Class にはいくつか興味深いモジュールがあります。 DBIx::Class::PK::Auto 標準で添付されているモジュールです。これについては以前書きました。 DBIx::Class::InflateColumn 標準で添付されているモジュールです。カラムデータとオブジェクト(たとえば DateTime クラスとか)を相互変換できるモジュールです。これを使うと CDBI の has_a で外部クラスを指定した時のようなことができるのかな? DBIx::Class::WebForm Data::FormValidator 等の結果をもとに,レコードを作成したり更新したり(CRUD)することができるモジュールみたいです。でも,実際にはフォームとテーブルが一対一対応してることなんて少ないと思います。ドキュメントも全然書いてないし。なので自分では使わないと思います。 DBIx:

    DBIx::Class 次の一歩(←いまココ) - daily dayflower
  • File::BOM via PerlIO::via - daily dayflower

    いまいじっているウェブアプリの設定は YAML 形式にしています。デザイナさんに設定ファイルをいじってもらったら「コンテンツがそっくり消えてしまいした〜(泣)」と言われてしまいました。ぱっとみ確認したところ形式が壊れたわけじゃなさそうだし…とよくよくみてみたら先頭に BOM がついてました*1。調べてみたところ,Plagger の謎 と同じ現象じゃないですか。 ということで,File::BOM なるモジュールと PerlIO::via インタフェースがあることを知りました。 (毎度毎度周回遅れな状況でため息がでてしまいます) File::BOM はファイルの BOM からエンコーディングを判別して自動変換してくれるもので,PerlIO::via による ':via' インタフェースを使うとエンコーディングにかかわらず透過的に読み書きできます。といっても BOM があるのは UTF-8/16

    File::BOM via PerlIO::via - daily dayflower
    unity
    unity 2006/09/25
    PerlIO::via
  • 1