end0tknr's kipple - web写経開発

太宰府天満宮の狛犬って、妙にカワイイ

2009-02-01から1ヶ月間の記事一覧

iconvでsjisEBCDICの変換。機種依存文字の変換は?

機種依存文字以外の変換であれば、問題なさそう as400(System i)とfile交換する場合、sjisEBCDICの変換を行う必要があります。perlで文字コード変換を行う場合、Encode.pmやJcode.pmを使用しますが、sjisEBCDICの変換を行うには、iconvを使用した方が扱いや…

ebcdic->sjis変換で失われたシフト文字分の空白をEncode::CJKConstantsで復活

ibmのas400(現在の製品名はSystem i)で使用されるebcdicという文字コードでは全角文字がある場合、その前後にシフト文字(0E:シフトアウト,0F:シフトイン)が挿入されます。 例えば、「漢字」という全角2文字がある場合 1byte 2-5byte 4byte 0E 漢字 0F as400…

apache or CGI.pm でhttp requestのPOST容量を制限

apacheでは、httpd.confにLimitRequestBodyを指定 http://httpd.apache.org/docs/2.2/ja/mod/core.html例えば、apacheで10kbyteの容量制限を行う場合、httpd.confに次のように記載します。 ※grobal, , のコンテキストに指定できます LimitRequestBody 10240…

Lingua::JA::Hepburn::Passportで氏名(かな)をローマ字に変換

こんなモジュールもあるとは、cpanで探そうとも思いませんでしたよ。 http://blog.bulknews.net/mt/archives/002071.html

pingやtracerouteでネットワークの状態を測定

「データセンタが引越して遅くなったのかも...」という話を最近、耳にします。では、ネットワークの状態をpingやtraceroute (winならtracert)で測定しましょう。 というお話。参考url http://www.atmarkit.co.jp/fnetwork/netcom/ping/ping.html http://www.…

パスワード(暗号化)非対応なArchive::Zipは /usr/bin/zip, unzipで代用

Archive::Zipはパスワード(暗号化)に非対応 perlでzipファイルを扱う際、Archive::Zipを用いていましたが、パスワード(暗号化)に対応していないとは知りませんでした。http://search.cpan.org/perldoc?Archive::Zip isEncrypted() Return true if this membe…

perlfuncのcallerで呼出し元の情報を取得

perlではcaller関数で呼出し元の情報を取得できます。 引数なしで実行すると、package,file,line noを取得 #!/usr/local/bin/perl use strict; use warnings; use Data::Dumper; sub func_1 { func_2(); } sub func_2 { func_3(); } sub func_3{ my @call_in…

perlのtipsには「Perlで書く」がいいかも

perlのtipsを紹介する「Perlで書く」というページを見かけました。http://archive.mag2.com/0000109251/index.html例えば、 メモ化 PerlIS.dllで動作しているかの確認方法 クレジットカード番号のチェック 関数処理をラップする イベントログにメッセージを…

perlで基数変換(10進数16進数 他)するには?

10進数->16進数にsprintf("%04X",$x)、16進数->10進数にhex($x) perlで基数変換するには、いくつか方法がありますが、私の場合、10進数->16進数にはsprintf("%04X",$dec_val)、16進数->10進数にはhex($hex_val)を使用しています。 #!c:/Perl/bin/perl use st…

DOCTYPEを指定して、ulとliによるタブメニューを作成

http://d.hatena.ne.jp/end0tknr/20081102/1225611996これまでは、DOCTYPEを理解していないため、タブメニューをtablタグで作成していましたが、DOCTYPEがなんとなく分かってきたので、ulとliによるタブメニューを作ってみました。http://d.hatena.ne.jp/end…

perlの正規表現で数値(整数)を3桁毎に区切る

1000→1,000のように数値を3桁毎に区切るには、正規表現「s/([+-]?\d+)(\d\d\d)/$1,$2/go」を使用しています。 #!/usr/local/bin/perl use strict; use warnings; my @test_vals = (-10000,-1000,-100,-10,-1,0, 1,10,100,1000,10000, 1234567.12345,1000.000…

Date::Japanese::Eraを使ってperlで和暦-西暦を相互変換

perlで和暦-西暦を相互変換するには、Date::Japanese::Eraを使用します。 http://search.cpan.org/~miyagawa/Date-Japanese-Era-0.06/lib/Date/Japanese/Era.pm 西暦から和暦 my @date_strings = ([1970,1,1], [2009,1,1]); for my $date_str ( @date_string…

htmlのDOCTYPEによる標準準拠モード設定

http://www.geocities.jp/multi_column/float/02.htmlieのcssにおけるボックスモデル問題に対して、次のように記述しておけば、ブラウザによらず標準準拠モードでレンダリングするものと考えていました。 次のurlにはDOCTYPEスイッチ一覧表が分かりやすくま…

mysqlで双方向(マルチマスタ)レプリケーション

前回までに1台の複数のmysqlを起動する方法を紹介しましたが、今回は、それらで双方向(マルチマスタ)レプリケーションを行う方法を紹介します。 my.cnf と my2.cnf 私のcolinux環境ではオプションファイルを切り替えることで、複数のmysqlを起動していますが…

設定ファイル(my.cnf)を複製して複数のmysqlを起動

mysqlのドキュメントでは、次のように複数のmysql起動手段として再?コンパイルを紹介していますが、設定ファイル(my.cnf)を複製すれば、複数のmysqlを起動できるようです。http://mirror.hostfuss.com/mysql/doc/refman/5.1/ja/multiple-unix-servers.html U…