- ベストアンサー
CPANについて
perlを始めて間もない初心者です。 Webサイトを構築するにあたって、これを使うとかなり便利になる「CPANにて公開されているモジュール」がありましたら、是非教えて頂きたいのですが。 曖昧な質問で申し訳ございませんが、よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
私も他所で「CPANでこんなのあるよ」って聞いてから見に行くので、マイナーなものはあまり知らないのですが、とりあえずこんなところを。 File::chdir $CWDって変数にディレクトリ名を設定すると、自動的にそのディレクトリにchdirしてくれる。 こんなことが出来ます。 use File::chdir; $CWD = "/foo/bar";#ここは/foo/bar open (IN1,'aa');#/foo/bar/aaをopen { local $CWD = "/moo/baz";#ここは/moo/baz open (IN2,'aa');#/moo/baz/aaをopen } #localから抜けるので/foo/barへ戻る open (IN3,'bb');#/foo/bar/bbをopen まぁ、「使えるの?」と聞かれると困る(実際使ったこと無いし)けど、tieの具体的な使用例としては面白いかも。 (ソースもpodあわせて300行だし) File::Slurp ファイルの内容を一気に読み込んだり、書き込んだりする。 こんな感じに使います。 (SYNOPSISからの抜粋) use File::Slurp; my $text = read_file( 'filename' ) ; my @lines = read_file( 'filename' ) ; write_file( 'filename', @lines ) ; やっぱりたいして使えないけど、効率的なファイルのreadやwriteのサンプルとして、読み物としては良いかも。 (こいつも割と短い) #ただし、セキュリティは考慮されてないので、rootで使うのは止めた方がよさげ。 CGI::ConvertParam CGI.pmの上にかぶさって入力値に変換をかけます。 (基本は文字コードの変換) 実際無くても困らないけので、やっぱり他のmoduleにかぶさる場合のサンプルかな。 (この中で一番短いし) 結局どれもそんなに役に立ちません。 まぁ、役に立つならメジャーになるので、マイナーで役に立つものなんてそんなに無いけど。
その他の回答 (2)
- zah90921
- ベストアンサー率0% (0/2)
まずは、やはり、定番のCGIおよびLWPを使用してみるのが良いのではないでしょうか。HTTP などプロトコルのお勉強にもなります。 http://www.cpan.org/mudules/by-module/LWP/ マイナーなのかどうか知りませんが、Excelファイルをパースしたり、作成したりするのに使うSpreadsheet::ParseExcel, Spreadsheet::WriteExcel モジュールなどは、いかがでしょうか。CGIモジュールと組み合わせれば、WebでExcelファイルからWebページを生成したり、Excelファイルを作成したりできます。
お礼
回答ありがとうございます。 Spreadsheet::ParseExcel, Spreadsheet::WriteExcelに、とても興味を持ちました。 WWindows上で試したいのですが、どのようにすればよいのでしょうか?Apatche,ActivePerlはインストール済みです。 よろしくお願い致します。
- zebedeer
- ベストアンサー率66% (80/121)
メジャーどころばっかですが。 HTML::Templateとか。 #でも、書き方が気に入らないので、にたようなのを自作。 Session::Fileとか。 #でも、デザインで値の破棄が出来ないのが気に入らないので、保存するのは全画面で必要な値のみ。 DBIとか。 #でも、バージョンによって揺らぎがあるので、もう一枚上に自作関数群をかぶせて使用。
お礼
回答ありがとうございます。 モジュールをカスタマイズなさるとは、かなり羨ましいです。私も、早くそういうレベルにいけるとよいのですが。まだまだ、試練が必要なようです。 さて、CPANモジュールについてですが、マイナー(?)なモジュールでこれは面白いというものがありましたら、是非教えていただきたいです。期待してますので、よろしくお願いいたします。
お礼
ファイルを扱うモジュールでも、便利なものがあったのですね。これであれば、毎回同じようなロジックを書く手間が省けて便利そうです。 「CGI::ConvertParam」をCPANにて調べてみたところ、エンコードをかえても一向に文字化けしたままでした。 かなり残念ですぅ。