【Perl】初心者コーナー Part19
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
03/02/09 00:24ID:s0tpWWxg1:自分はこう言う事がしたい。
2:それでこんな風にやってみたが・・・
3:それだとこんなエラーが出て上手く行かなかった。
1と3が無いと誰も答えられないよ。
良い回答は良い質問から。一緒に勉強しましょう。
CGIだけど、なんか質問ある? Part 9
http://pc.2ch.net/test/read.cgi/php/1041530204/
参考書籍の話題は【Perl,CGI】参考書籍 第三版
http://pc.2ch.net/test/read.cgi/php/1030209573/
その他の雑多な話題は、【CGIに依存しないPerlの話題一般/Part2】
http://pc.2ch.net/test/read.cgi/php/1030548610/
スクリプトの改造依頼は 【 スクリプト改造工房 PART 5 】
http://pc.2ch.net/test/read.cgi/php/1028193595/
あとは>>2-10。
0721nobodyさん
03/03/09 16:30ID:???インタプリタやスクリプトなら最適化が難しい分余計に。
他の言語を使えというのはひとつのソリューションだろうが、
このスレの趣旨ではなかろう。
0722nobodyさん
03/03/09 16:49ID:???0723nobodyさん
03/03/09 17:04ID:???深読みしすぎかもしれんが、
<<EOM;
EOM
この記法は「EOM」じゃないからね。
ソース出さずに「EOM云々〜」って質問すると恥かくから気をつけよう。
0725nobodyさん
03/03/09 17:17ID:???これどういう意味なんだ?
0728nobodyさん
03/03/09 17:54ID:???0730nobodyさん
03/03/09 18:06ID:2bzPHLiwprint <<"HTML";
<html>
ほげほげ
</html>
HTML
と書いているのですが、どこかで「HTML」と書くのは"格好悪い"
と書かれていた気がします。。
慣例的にはなんと書けば良いのでしょう?
EOFとかになるんでしょうか?
0732nobodyさん
03/03/09 18:18ID:???( ・∀・) | | ガッ
と ) | |
Y /ノ 人
/ ) < >__Λ∩
_/し' //. V`Д´)/
(_フ彡 / ←>>731
0734nobodyさん
03/03/09 18:26ID:2bzPHLiw「HTML」格好悪くないですか??
できれば慣例とか知りたいです。
そういう慣例ページみたいのあればうれしいんですが。。
0736nobodyさん
03/03/09 18:41ID:???END_OF_???
EO?
こんなのが多いと思うけどさ。
ラベルと一緒でそれとわかれば何でもいいんじゃないの?
0737nobodyさん
03/03/09 19:27ID:vWAYxQigごもっともです。けど見てみたら同じHTML出力でも
統一されてないようだったのでいったい何の略だ?
と思いまして。。
>>736
なるほど。勉強になりました。EO?をよく見ると思ったら
そういう理由だったのですか。こういうのはEOM、こういう場合は
EOFとか暗黙の常識?みたいのがあると思ってました。
(ある程度はそういうのがあるのでしょうけど)
ありがとうございました。
0738nobodyさん
03/03/09 20:20ID:???日本人なら日本語で。
おわり
# ネタだからね、多分!
0739nobodyさん
03/03/10 00:09ID:???このスレ読むまで意味を考えたこともないことに気付いた。
HTMLはダサくないと思う。
むしろ、そこはHTMLの出力部分であることを明示する意味で、
ソースの可読性に貢献してると思う。
俺も少し考えてみるか……
0740714
03/03/10 01:07ID:???実行速度は確認画面などで時間稼ぎをすればある程度はごまかせますが
機械は誤魔化せないのが辛いです
ちなみに漏れはEOM=End of Messageだと思ってます
EOFは本来ファイルの終わりをさす言葉なので途中で書くことはためわれます
ヒアドキュメントを使うというのは@array=<FH>同様に一気にメモリーを使って実行してしまう書法
対してprint "abc"; print "cde";はwhile()同様にメモリーの消費を抑えて実行する書法だと思っているのですが
だと思っていましたが間違いでしょうか?
0741714
03/03/10 01:11ID:???@array=<FH>;
print @array;
がメモリーの無駄遣い
print <FH> while(<FH>);
ということで、考えてみてください
ついでに695ではありません
0742nobodyさん
03/03/10 02:21ID:???そんな些細な事にいちいちカコイイ!!とかカコワルイ!!とか言ってる方が何か変よ。
0743nobodyさん
03/03/10 02:59ID:???メモリの消費と言うが、ヒアドキュメント程度でperlがシステムから確保する
メモリを使い切るようなコードを書いてるならそっちが問題だろう。
特にサイズを指定しない場合のメモリサイズ知ってるか?
そうそう、答え
>間違いでしょうか?
間違いです。メモリに格納はされません。
>>741
考えるまでもない例えだろ。
0746nobodyさん
03/03/10 08:12ID:???0748nobodyさん
03/03/10 13:37ID:???PerlにはPHPのstaticに相当する関数ってありますか?
それなりにPerlを扱ってきたにもかかわらず、今まで知り得なかったので
もしあったら便利だなーと。
perlfaqにあるね。staticキーワードは無いが、実現は出来る。
perldoc -q static
...
BEGIN { # BEGINが不要なケースもある。が、あったほうが安全
my $counter = 42;
sub prev_counter { return --$counter }
sub next_counter { return $counter++ }
}
...
0751名無し.net
03/03/10 19:23ID:???Perlで半角カタカナを文字化けさせないように利用するにはどうすれば良いでしょうか?
jcode.plを使うと文字化けが発生するのですが・・・。
全角カタカナに直す以外の方法で教えてください
0753名無し.net
03/03/10 19:58ID:???そんなぁ〜(><)
0755名無し.net
03/03/10 21:03ID:???0756T女の竹田
03/03/10 21:22ID:???Shift-JISで通すならjcode.plはいらない。
もちろんEUCでデータを送られたら化ける。
ところで、ページをSJISで表示してるのに、フォームからEUCで送られてくるってこと
あるのかな?前から疑問なんだけど。
0757名無し.net
03/03/10 21:32ID:???出力はJhift-JISにしてますけど、コードやDBはEUCを使ってます。
あと、メールを使うときはjisに変換したり・・・。
なのでjcode.plをどうしても使ってしまいます。
0758nobodyさん
03/03/11 09:23ID:???そのファイルの50行目の値が欲しい時、直接50行目の値を取得することできるんでしょうか。
49回スルーさせるんじゃなくて。
0759名無しさん@Meadow
03/03/11 09:24ID:i+lsKHdVJcode.pmにしれ。
0760nobodyさん
03/03/11 09:33ID:???そもそもネットで半角(ry
>758
固定長ならseekで。可変長なら無理ぽ
0761Fox
03/03/11 10:58ID:eJEHBp/l0763nobodyさん
03/03/11 11:33ID:???ブラウザの実装次第になってしまうのでありうる。
>>757
EUCで半角カナをどう扱うか考えてみましょう。
無理ぽ
>>758
head -50 text.txt | tail -1
0764nobodyさん
03/03/11 11:43ID:???掲示板にはいる前のページとかに
最後に書いた人の名前と時間が表示されてるのがつくりたいです。
ちなみにiモードでやりたいです。
0769の
03/03/11 13:56ID:2/UrfMw3インデックス持ってれば、可変長でも seek で可能だな。
0770nobodyさん
03/03/11 14:06ID:???0776nobodyさん
03/03/11 15:47ID:???exitってさ、ライブラリから使ってもOKだよね?
完全にプロセス死んでくれるよね?
まさかライブラリのみ終了してますた。なんてオチはないよね?
内部処理とかはどーなってるのか全然知らないんで…。
m(__)m
0778776
03/03/11 15:56ID:???0779nobodyさん
03/03/11 15:59ID:???ファイル内部に行なんていう概念はない。
\n毎に行と考えたいのだろうが、ファイルにとってはただの1文字。
どうしてもやるなら読み込んでから改行の数と位置を調べて
計算して3行目に相当する位置へseek。
0780nobodyさん
03/03/11 16:48ID:4+uSO65sって言う便利な記述はないですか?
ないですよね?
0781770
03/03/11 16:56ID:???0784nobodyさん
03/03/11 19:16ID:8fW/w1hx数字を1万通り入れればいいんですけど、さすがに時間の都合で難しい
登録した時のアドレスが違うのかパスワード再発行が処理されない。
以上の状態
他の板で
テキストエリアに入力するよりPerlでも使ってガーっとpostし
たほうが簡単。
といわれましたが、perlは使った事がないんで何とも。
その板の住人に聞くのも板違いかと思って、こちらに移りました。
自分で検索した所、イメージ的に
1,自分のPCをperlが使えるようにする。(できた)
2,perlにてパスワードのエリアにpostするためのファイルを作成
3,自分のPCから実行し、パスワードテキストエリアに挿入
という事で、だいたい合ってますか?
0786nobodyさん
03/03/11 19:21ID:???一応、同情を誘うつもりはありません。
質問スレなので、詳しく書こうかと思って。
その辺伏せれば、まともな答えが返ってこないですよね?
0788nobodyさん
03/03/11 19:29ID:???お説教でしょうか?
まあ、だいたい合っているというのであれば、それはそれで
いいです。
後は自己責任でやります。
どうもありがとうございました。
0790nobodyさん
03/03/11 19:30ID:???0793nobodyさん
03/03/11 19:41ID:???ちょっと面倒そうだなあと言ってみるテスト。
0794nobodyさん
03/03/11 19:42ID:???ダメだったときの結果はわかるのだからそのelseで良いんではないかと考えた。
と、誘導尋問ならおもしろいなと思ったテスト。
0797nobodyさん
03/03/11 19:47ID:???0801nobodyさん
03/03/11 20:12ID:???0802nobodyさん
03/03/11 20:26ID:???0803nobodyさん
03/03/11 21:12ID:???その前に釣られたあなたもはーとびーと
0804nobodyさん
03/03/11 22:51ID:???多人数同時参加型のネットゲームが作りたいです。
どうすればよかとですか?
0806nobodyさん
03/03/12 13:12ID:???perl本体とlib(*.pm)のそれぞれをBuildするコンパイラが違ったりすると
マズい事になりますか?
具体的にはSolaris。perlがSUNのccでBuildされ、lib類(CPAN等)はgcc
でBuildされた場合・・・って感じです。
Shared library 周りで不整合が起きる様な気もするんですが、手元にSUNの
ccが無いので試す事が出来ません。
0808nobodyさん
03/03/12 13:55ID:???インストールしようと思ったのですが、ppm で検索をかけても見付かりません。
http://ppm.activestate.com/PPMPackages/zips/
で 8xxを見たら確かに無いので 6xxにある Image::Magick.zip を使って
ppm install Image-Magick.ppd
したのですが以下のようなエラーが出てきてしまいます。
Error: no suitable installation target found for package Image-Magick.
これはどのように対処したらいいのでしょうか。
0810nobodyさん
03/03/12 15:54ID:eDO5fFOYという正規表現を書こうとしたんですが
どうも書き方が解らず for 文になってしまいます。
どなたかお手本を見せてもらえないでしょうか。
お願いします。
0811nobodyさん
03/03/12 15:57ID:NGPUyx9R数値だよね?
($n % $i == 0)
0813nobodyさん
03/03/12 17:56ID:bplOKqH9思い立ち、エイヤっと全部まるまる取ってしまったら、なんか
すごくスクリプトがスッキリ見えて、前よりも理解しやすくなっ
た。。。。という経験ないすか?
0815nobodyさん
03/03/12 21:54ID:???スクリプト内で取得したメールアドレスを$mailという変数に
格納し、メールのテンプレートを外部ファイルから読み込んで
送信したいのですが、ヘッダ部分にTo: "$mail"と記述していても
変数展開が行われません。
外部ファイル内にある変数は展開できないのでしょうか?
0818815
03/03/12 22:32ID:???メインルーチンの中で、$mail="[email protected]";
となっています。で、外部ファイルでは
To: $mail
From: [email protected]
Subject: hoge
<以下メール本文>
という構造です。このテンプレートファイル名が$fileに格納されているとき、
open (BODY,"$file");
@mail_body=<BODY>;
close (BODY);
としています。
0820nobodyさん
03/03/12 23:09ID:???s///はスカラのみが対象になるかと。
スマートにやるなら、HTML::Templateをお勧め。
■ このスレッドは過去ログ倉庫に格納されています