自作CGIを評価するスレ (672レス)
上下前次1-新
144(1): 71 03/04/09 03:33 ID:??? AAS
>>143 8-9行目
if ($in{'rev'}){
my $script = 'http://' . $ENV{'SERVER_NAME'} . $ENV{'SCRIPT_NAME'};
ココ逆だな・・・
my $script = 'http://' . $ENV{'SERVER_NAME'} . $ENV{'SCRIPT_NAME'};
if ($in{'rev'}){
145(1): ◆YHmsETNOS2 03/04/09 04:42 ID:??? AAS
>>138
> myとかの使い方覚えたほうがいいかも
わかりました。勉強します。
> PHPもいいかもよ
perlと心中しまつ。
> ファイルをアップロードするわけでもないんだし
いやいや、今後画像をあぷすて貼り付けるつもりなので。。。
いつになるかわかりませんが。。。。。
>>144
うわぁ、ソースが綺麗でつ。
省8
146(1): 71 03/04/09 04:57 ID:??? AAS
>>145 動かしてないからねぇ(w
穴ありまくりであろうかと
147: 03/04/09 09:53 ID:??? AAS
> そういえば、さっきmyとmyなしでベンチマークを行ったら
> myの方が3,4倍遅かったのだけど…。メモリ消費は解らない。
根拠を示さずに結果だけ取り出して言われても…。誤解されないかな?
my の何のベンチマークを行なったの?
ループ・ブロック内で変数を宣言して、そのオーバーヘッドを測っていた
なんて事はないよね?それとも、ホントに変数の参照・代入が3〜4倍もかかったりした?
148: 03/04/09 10:12 ID:??? AAS
>>142
myのほうが遅いというのはちょっと信じがたいな。
ブロック外から参照される必要がないからシンボルテーブルにも
登録されないし、むしろ速くなるはずだが・・・
149(1): ◆YHmsETNOS2 03/04/10 04:22 ID:??? AAS
>>146
$html =<<'EOT'; を $html =<<"EOT"; でOKでした。
なお、ローカルで動かない件は、cgi-lib.pl へのパスが違っていたというアフォが原因。
150: 71 03/04/10 05:35 ID:??? AAS
>>149
シングルクオートよくやっちゃうんですよ〜(w
動いてよかったです
151(1): 03/04/10 06:38 ID:??? AAS
cgi-bin.pl って
確か、CGI.pmがサポートしてたはず・・・
標準モジュールだよ。
use CGI qw(:cgi-bin);
152: 71 03/04/10 06:41 ID:??? AAS
>>151
自分で処理を書くもんでねぇ・・・
153(1): 03/04/10 10:43 ID:ljl/7aqx(1/2) AAS
ベンチマーク取って見たけど…明らかに my を使った方が高速。
-w と use strict 外して my も何も付けない場合とか、
our も試して見たけど。速度的には my < our < local って順番だったよ。
#! perl -w
use strict;
use Benchmark qw(:all);
my $count = 100;
my $code1="my \$code=1;"; map{$code1 .= "\$code++;\n"}(1..$count);
my $code2="local \$code=1;"; map {$code2 .= "\$code++;\n"}(1..$count);
timethese(1000,{
省7
154: 03/04/10 13:31 ID:??? AAS
>>153
追試。
--- bench ---
use strict; use Benchmark;
my $loop = 5000;
my $code1 = 'my $code = 1;' . '$code++;' x 100;
my $code2 = 'local $code = 1;' . '$code++;' x 100;
timethese($loop, { '1_my' => sub { eval $code1 }, '2_local' => sub { eval $code2 } });
---
● ActivePerl Build 522 on Win98SE
省13
155(1): 03/04/10 18:05 ID:??? AAS
>>121
if ( ( my $aho = $query->param('hogehoge') ) eq 'hoge') {
$a =~ s/a/b/;
$nazoflag .= $a;
} else {
# $ahoは見える。
}
# $ahoは見えない。
while ( defined ( my $line = <IN> ) ) {
# $lineは見える
省5
156: 03/04/10 18:08 ID:??? AAS
2行目が間違ってた。$aだとuse strictでエラーにならないから$ahoにしたんだけど、
これは、、sort用にこっそり、エラーにしないようになってるのかな。
追加、これはなかなか使える
foreach my $hoge (@list) {
}
157: 03/04/10 18:36 ID:ljl/7aqx(2/2) AAS
>>155
質問。continue って何?
158: 03/04/10 18:58 ID:??? AAS
man perlsyn
159: 03/04/10 20:47 ID:??? AAS
”次のループに移る前に実行されるブロック”であってる?
こんな制御構文あったんだ。知らなかった。Thx >> 158
160: 03/04/10 20:58 ID:??? AAS
うん。これは、nextとかを使うとき、行番号が確実に進むようにする、みたいに使う
161: ◆MvRbZL6NeQ 03/04/11 00:23 ID:??? AAS
なるほど
162: [ ] 03/04/11 00:36 ID:??? AAS
つまりはforの後処理か
163(3): ◆YHmsETNOS2 03/04/12 20:17 ID:??? AAS
再び。。。
すみませんがちょっと漏れのスクリプトを見てください。
前回のソートの練習に加え、ページの分割もしてみますた。
いちおう漏れの思っている動作しているのですが,突っ込むところがあれば,後学のために色々教えてください。
なお、前回指摘された “myとかの使い方” は。。。。。(^^A
ソースはこちら,
外部リンク[txt]:members.tripod.co.jp
使ったデータはこちら
外部リンク[txt]:members.tripod.co.jp
要 cgi-lib.pl です。
省1
上下前次1-新書関写板覧索設栞歴
あと 509 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.012s