トップページ⇒php
1001コメント350KB

【Perl 】初心者コーナーPart7

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい01/09/12 13:04ID:???
いらっしゃーい、perlのコーディングで困ってる人のスレです。

1:自分はこう言う事がしたい。
2:それでこんな風にやってみたが・・・
3:それだとこんなエラーが出て上手く行かなかった。

1と3が無いと誰も答えられないよ、良い回答は良い質問から。
一緒に勉強しましょう。

参考書籍はこちら【【Perl,CGI】参考書籍 第2版 】
http://corn.2ch.net/test/read.cgi?bbs=php&key=988809842&ls=50
CGIの質問はこちら【CGIだけど、なんか質問ある?part3】
http://corn.2ch.net/test/read.cgi?bbs=php&key=988727833&ls=50

過去ログ、その他の役立ち情報は>>2-5を見よう。
0596名無しさん@お腹いっぱい。01/10/05 11:44ID:Cx9AZXvI
>>595
Jcode.pmを入手して使うと楽。
日本人が作ったやつだけど、CPANにあるっけ?調べてみて。

use Jcode;
my $s = "まあ聞いてくれよ、スレと関係あるからさ。\n";
print Jcode->new(\$s, 'sjis')->utf8;

何がゴミデータかというのはエディタにもよるから。どのエディタ?
059759601/10/05 11:46ID:???
Jcode.pmをインストールするにはCコンパイラが使える
環境でないとだめだったかも。。。
Windows用ならコンパイル済みのやつがある。
0598名無しさん@お腹いっぱい。01/10/05 11:51ID:???
>>592
c:/bin/
こんなの?
0599名無しさん@お腹いっぱい。01/10/05 12:32ID:???
>598
そんなの。unix系は"c:"なしで。
0600名無しさん@お腹いっぱい。01/10/05 13:07ID:QBNm.OW.
>>596 ありがとうございます!

ゴミデータってのは、制御コードのようなものとか、
文字コードが判別できないような「F・カ」みたいに表示されて
しまうものとか。そういったデータのことです。
エディタによって表示が違うのはその通りですね(^^;
0601名無しさん@お腹いっぱい。01/10/05 18:48ID:???
$data = 'hogehogeMicro$ofthogehoge';
$hash{'Micro$oft'} = "VVindovvs";
foreach(keys %hash) {
$data =~ s/$_/$hash{$_}/;
}
print $data;

この場合 "Micro$oft" に含まれる "$" がパターンと見なされて
うまく置換できません。どのような回避方法が考えられるでしょうか?
自分ではパターン文字列でメタ文字と見なされてしまう文字列を
あらかじめエスケープする置換処理を挿入しているのですが
あまりスマートとは思えません。

パターン部の変数展開を一度だけ行ってくれるといいんですが。
「o」では期待した動作が得られませんでした。
0602名無しさん@お腹いっぱい。01/10/05 18:51ID:???
\Q$_\E
0603名無しさん@お腹いっぱい。01/10/05 19:22ID:???
ハッシュキーが少なければ"|"でつなげた正規表現を最初に作っておくのもありだな。

$data = 'hogehogeMicro$ofthogehoge';
%hash = ( 'Micro$oft' => "VVindovvs", 'hoge' => '[ピー]' );
$re_keys = join('|', map { "\Q$_\E" } keys(%hash));

$data =~ s/($re_keys)/$hash{$1}/go;
print $data;
0604名無しさん@お腹いっぱい。01/10/05 23:37ID:QBNm.OW.
>>600
Jcodeをppmでインストールしようとしたら
>Installing package 'Jcode'...
>Error installing package 'Jcode': Read a PPD for 'Jcode',
>but it is not intended for this build of Perl
>(MSWin32-x86-multi-thread)
というメッセージが出てきてしまいました。バージョン違い?
CPAN逝ってきます。
0605名無しさん@お腹いっぱい。01/10/06 00:32ID:MEgHrhMk
>>604
うわーん。

http://search.cpan.org/search?dist=Jcode
>FAIL MSWin32-x86-multi-thread

ってのはWinはダメの意でしょうか。かなりしょんぼり。
0606名無しさん@お腹いっぱい。01/10/06 00:47ID:???
>>605 続き
すみません。
http://openlab.ring.gr.jp/Jcode/index-j.html
にありました。
0607名無しさん@お腹いっぱい。01/10/06 08:38ID:xcBMND.s
ファイルに記録する時、1人(グループ)に関する複数の
データを記録する時の区切り文字には定番だったり
慣例のものとかってあるんですか?
よく目にするのが<>だったり\tだったりしますが?
教えてくらはい。
0608名無しさん@お腹いっぱい。01/10/06 10:51ID:32vtXsHY
自分のPCはWindowsなんですが、perlを書くときに
UNIXみたいに#! /usr/local/bin/perl(コマンドライン?)
というのを使える様にするにはどうすればいいんでしょうか?
ちなみに、perlソフトはActive Perlです。

教えて君初心者ですみません。。
0609名無しさん@お腹いっぱい。01/10/06 10:56ID:???
>>607
エクセルとか意識するならCSVは忘れない方がいいんじゃないかな
\tはTSVって言ってCSVの親戚みたいなもんか。。
<>が使われるのは多分BBSとかのログは大抵タグがエスケープされてる
から、デリミタ混入→ミスヒット、の可能性が低くなるからだと思う
0610名無しさん@お腹いっぱい。01/10/06 11:09ID:xcBMND.s
>デリミタ混入→ミスヒット、の可能性が低くなるから
なるほど!<>にはそういう意味があったんですか!
どうもありがとうございます。
TSVってのは知りませんでした。
メモ帳とかで開くとタブで区切っとけば
見やすいからだと思てた・・・。
0611名無しさん@お腹いっぱい。01/10/06 11:10ID:???
>>608
入手にちょいと苦労するがむっちゃ便利なプログラムがある。
ベクターで「SOS」を検索してみ。
0612名無しさん@お腹いっぱい。01/10/06 11:28ID:xcBMND.s
http://www.vector.co.jp/soft/dos/util/se028129.html
これの事ですかね?
PERLで書いたスクリプトをcなんかの様に実行形式に
コンパイルできるソフトって無いものですか?
あるにはあるけど正確じゃない。みたいな事は耳にするのですが?
どうなんでしょう?
0613名無しさん@お腹いっぱい。01/10/06 14:14ID:???
>>608
Cygwin入れたらいい

これで一件落着
061460801/10/06 17:41ID:PN8fPnr6
>>613
それを入れたら良いとか本に書いてあったんですが
ダウンロードサイトに行ってみたら、どうやら金取られるみたいで..
611さんの言うのもダウンロードしたのですが
どうやってパッチを当てるかいまいちわからなくて..。

ほんと、難しいですよね...鬱
0615名無しさん@お腹いっぱい。01/10/06 18:51ID:???
Cygwin有料になったのか?  笑
もっと健作白〜〜〜
何をそんなに焦っているのか? 今日納期の仕事してる訳じゃ無いだろ
実際Unixのshellに触る事は回り道でもなんでも無いんだぞ
って9xで使えたかな (・∀・;)??
0616名無しさん@お腹いっぱい。01/10/06 19:46ID:???
>>614
http://cygwin.com/setup.exe
これ落とせ
んで、どっかに移動してから起動して、それで適当にサーバー選んで落としてこればいい
061761401/10/06 20:26ID:w30D7B7.
>>615-616
どうもありがとうございんます。。
どっかに移動して起動して、というのはどういうことでしょうか?
ディスクトップに解凍するのでいいのですか?

あと、大変失礼な質問なのですが
そのファイルは大丈夫なのでしょうか?
拡張子がexeなので心配で...
0618名無しさん01/10/06 20:36ID:???
どうやらアナタはWINDOWSの操作に先に慣れた方が良さそうです。
まずWIN板に行ってファイル操作や圧縮解凍に付いて学びましょう

>あと、大変失礼な質問なのですが
>そのファイルは大丈夫なのでしょうか?
>拡張子がexeなので心配で...

憶測ですが、おそらく616氏はsetup.exeのAUTHORでもcygwin.comのサーバ管理者でも
無いと思われますので何がどう大丈夫なのかは分からないでしょう
061961701/10/06 21:58ID:w30D7B7.
>>618
すみません、実はP検3級のOSはAなんです(w
解凍とかもたまにUGにいくのである程度はわかるのですが
でも、やっぱり深く掘り下げると難しくて。。

一瞬ウィルスだと思ったんですがアドレスが違うみたいですね。
ちょっとexeファイルに過敏になっていたもので..。
もう少し勉強してまた、質問させていただきます。
0620名無しさん@お腹いっぱい。01/10/06 22:12ID:???
解凍はたまにUGに逝くとある程度わかるんですか。名言ですね(藁
0621名無しさん@お腹いっぱい。01/10/06 22:22ID:w30D7B7.
>>620
解凍するソフトの種類や拡張子の種類はわかりますです。
0622 01/10/06 23:20ID:???
さてはあなた、ただのワレザーですね
0623名無しさん@お腹いっぱい。01/10/06 23:29ID:tXZdOs1c
perlの範疇ではないかもしれませんが…

ファイルからデータを読みだし、そのデータを含むHTMLを
ブラウザに表示させるスクリプトを書きました。
TELNETのコマンドライン上から実行すると
狙いどおりの出力をしてくれるのですが、
ブラウザ上からURLを入力して実行すると
500 Internal Server Errorがでてしまいます。
パーミッションなども確認したのですが
おかしなところは見当たりません。

何かチェックすべきところが他にあるのでしょうか。
0624名無しさん@お腹いっぱい。01/10/06 23:43ID:???
Content-type?
062562301/10/06 23:46ID:tXZdOs1c
print "Content-type: text/html\n";
HTMLの直前に書きました。
0626名無しさん@お腹いっぱい。01/10/06 23:51ID:???
>>623
print "Content-Type: text/html\n\n";
062762301/10/06 23:51ID:???
改行2つ「\n\n」
でした。自分で書いて気がついた。

助かった〜ありがとうございました。
062862601/10/06 23:52ID:???
ゴメンちぇく済みだったみたいね
0629たかちゃん01/10/06 23:54ID:j.NzGGwA
すいません
初心者ですが、cgiを設置したのに見ると
CGI エラー - 以下のコマンドラインを実行できません : "perl C:\kujira\aska.cgi ", errorcode = 2, No such file or directory
と出るのですが、どうしてでしょうか?
お願いします
おしえてください
0630名無しさん@お腹いっぱい。01/10/06 23:55ID:???
CGIスレ逝って下さい。
0631名無しさん@お腹いっぱい。01/10/07 02:00ID:???
perlのスクリプトをコンパイルして実行形式にしたいです。
助けてやって下さい。
0632名無しさん@お腹いっぱい。01/10/07 02:12ID:???
>631 perlcc。
CGI速くするだけなら別の方法もあるよ。
0633名無しさん@お腹いっぱい。01/10/07 14:43ID:???
foreach (reverse 1 .. 10) {}だと、
1番目から10番目を逆順で処理してると思うんですが、
逆順にしてから1番目から10番目を取得するにはどうしたらいいでしょうか。

つまり、
1-30のうち
10,9,8...,2,1ではなくて、
30,29,28...,22,21と取得するということ。
0634名無しさん@お腹いっぱい。01/10/07 14:44ID:jXvc6whk
>632
perlccですか!ありがとうございます。
けどやっぱcとかみたいにうまくコンパイルできないとか
言う話をちらほら聞いた事あるんですけどどうなんでしょう?
>CGI速くするだけなら別の方法もあるよ。
良かったら教えて欲しいっす!!
どんなんでしょう?
0635名無しさん@お腹いっぱい。01/10/07 15:15ID:???
>>644
スライスの使えばOK.
(reverse 1..30)[0..9]
0636名無しさん@お腹いっぱい。01/10/07 15:18ID:???
すまん。>>633ね。逝くわ。
あと、30から21がほしいだけなら、reverse21..30でもいいような。
0637JAPU@愛国戦隊大日本01/10/07 16:13ID:???
>>633
for($i = 30; 20 < $i; $i--) としても良いです。

>>634
mod_perl, SpeedyCGI など。Perl の場合は起動と構文解析に時間がかかるので、そのコストをおさえることができます。
0638名無しさん@お腹いっぱい。01/10/07 16:22ID:???
>>635
ありがとうございます。

んー。
@read[$hoge .. $moge]を逆順で処理させたくて、
$hoge = 0;
$moge = $hoge + 10;
foreach (reverse @read[$hoge .. $moge]){}
とやってみたのですが、
@readに仮に0-30のリストが入っているとして、
9,8,7,6,5,4,3,2,1,30という処理順になってしまいました。
むむむ…。一体どうすればいいのでしょう…。
0639635=63801/10/07 16:24ID:???
>>637
ありがとうございます。
試してみます。
064063501/10/07 16:30ID:???
>>638
修正
> 9,8,7,6,5,4,3,2,1,30という処理順になってしまいました。
→ 9,8,7,6,5,4,3,2,1,0,30という処理順になってしまいました。

>>637
書き込んだらレスがついていたので慌ててお礼だけ書きましたが、、、

まず考えたのがそれだったんですが、作っているのが掲示板で、
リストの最後がいくつになるか判断するルーチンは今のところ無いんです。
ありがとうございました。
0641名無しさん@お腹いっぱい。01/10/07 16:31ID:jXvc6whk
>637
サーバーで用いるインタープリタを変えるって事なのかな?
勉強になるです。ありがとうございました。
0642名無しさん@お腹いっぱい。01/10/07 16:39ID:???
perlccはcのソースにするのかな?
実行形式にするのにはPerl2Exeってのもあるんですね。
知ってる人の方がおおいんだろうけど
自分見たいののために報告〜。
0643名無しさん@お腹いっぱい。01/10/07 17:09ID:Hz5hclI2
>>640
>→ 9,8,7,6,5,4,3,2,1,0,30という処理順になってしまいました。
いったいどうすれば、そんな処理順に・・・。
それをねらってやるほうが難しい(つーか面倒)なのでは。
0644名無しさん@お腹いっぱい。01/10/07 17:53ID:???
>>643
@a = (0 .. 30);
@a = reverse @a[-1 .. 9];
print "@a\n";
0645名無しさん@お腹いっぱい。01/10/07 21:46ID:XxfLnDlQ
みんなファイルロックするのにどんな方法使ってます?
リネームが一番効果的っての聞いた事あんですけど。
DBMてのを使うのは無しで。
0646名無しさん@お腹いっぱい。01/10/07 22:17ID:kSNrchYM
キーが二つあるハッシュで、foreachみたく要素を回すにはどうしたらいいでしょうか。
ずーと悩んでるけれど全然スマートな方法が思いつかないッす。
0647名無しさん@お腹いっぱい。01/10/07 22:27ID:???
>>645
flockだけど、、evalすらしてない  w

>>646
二つしかないならループしなくて良いじゃん?
普通はkeysでkeyの配列作ってその配列をforeachしたり
eachしたり、、
@keys = keys (%hash);foreach (@keys)
while (($key,$value) = each %hash)
0648名無しさん@お腹いっぱい。01/10/07 22:36ID:kSNrchYM
>>647 レスさんきゅ

でも、チョット違うかもしんない。
そういう意味でなら、キーがみっつて事になるかな。
$hashref->{1}->{2} = 3;
みたいな。

書き方はこれじゃなくても、何でもいいんで同様のことを実行できる方法ないっすかね。
0649名無しさん@お腹いっぱい。01/10/07 22:48ID:???
647に書いてるやん・・・・(゚Д゚)???
0650むぎ茶      01/10/07 22:55ID:???
ハッシュ使うな全部配列にしろ  (n


┐(´ー`)┌


┏━━━━━━━━━┓
┃('Д')y ─┛~~  ┃
┃むぎ茶       ┃
┃[email protected]   ┃
┗━━━━━━━━━┛
0651名無しさん@お腹いっぱい。01/10/07 22:58ID:kSNrchYM
$hashref = \%hash;
$hashref->{"key1-1"}->{"key1-2"} = "1-3";
$hashref->{"key2-1"}->{"key2-2"} = "2-3";

while (($key, $value) = each %hash) {
 while (($key2, $value2) = each $value->{$key}) {
  print $key, "=>", $value->{$key2}, "=>", $value2, "\n";
 }
}

こーいうことがしたいの。
065263401/10/07 23:03ID:???
>>640のような変な処理順は直りましたが、(原因は>>644でした。)
未だに当初の目的は達成できません。
>>635を参考に>>638のようにしても無理なのですが、
どうすれば良いんでしょう?
0653名無しさん@お腹いっぱい。01/10/07 23:04ID:???
%hash = (
key1 => { key1-1 => 'val1-1' },
key2 => { key2-1 => 'val2-2' },
);

>>651
%$valueね。
0654名無しさん@お腹いっぱい。01/10/07 23:08ID:???
おー。うごいた。そっいうことかー。
むっちゃありがとー。今夜はぐっすりねれそうだよー。
0655名無しさん@お腹いっぱい。01/10/07 23:11ID:???
LWPってリジューム可能?
0656名無しさん@お腹いっぱい。 01/10/07 23:26ID:???
>>652
何言いたいのか解らん、上の方で言ってるのでなんで駄目なんだ

@list = reverse (0..30);
foreach (@list){
 print "$_\n";
 last if($cc == 10);
 $cc++;
}
0657名無しさん@お腹いっぱい。01/10/07 23:30ID:???
>>652
こうだと推測してみた。正解なら俺をエスパーと呼べ。
@read = (0 .. 30);
$hoge = 0;
$moge = $hoge + 10;
foreach (reverse @read[-$moge .. -1-$hoge]) { print "$_\n"; }
0658名無しさん@お腹いっぱい。01/10/07 23:32ID:???
>>634
foreach (reverse @read[-10 .. -1])
はどう?

変数使うなら
$hoge = $#read;
$moge = $hoge+10;
foreach (reverse @read[$moge .. $hoge])
とか。

これは先に後ろ10個取り出してから,逆順にしてる。
>>638は始めの10個取り出してる。
065965801/10/07 23:33ID:???
あう,かぶった・・・
066063401/10/07 23:45ID:???
恥を忍んでソース公開です。。。
http://www.geocities.co.jp/MusicStar/2856/bbs.txt
0661名無しさん@お腹いっぱい。01/10/08 00:04ID:pELG7ByE
>648
なんかflockだとするロック破られるとか
書いてあるの読んで気がひけるんですよね。
実際どうなのかはわからないですけど。
皆さんの方法とか教えてくれないですかね?
0662名無しさん@お腹いっぱい。01/10/08 00:07ID:???
突込みどころ満載なのはいいとして・・・・

foreach ( reverse @read[$page .. $page_end] ) { これは
foreach ( reverse (@read[$page .. $page_end]) ) { こう評価される
つまりケツから10個じゃなくて頭の10個をreverseしてる

先に@read = reverse @read; とでもして
foreach (@read[$page .. $page_end] ){ こうしとけ
0663名無しさん@お腹いっぱい。01/10/08 00:17ID:???
>>661
何を破られんのか解らんけど、flockしないなら
rename、simlink、mkdir、辺りの関数で実装するの普通
ここでロック論争始めるとまた色んな信者さんが出てくるから
その辺のスクリプトとか大崎さん所(perlメモ)とか見てくれ
flockよりショボイのは幾らでも組めるが***まともに機能してる***
flock以上のは組めないってのがほんとのところ
0664名無しさん@お腹いっぱい。01/10/08 00:24ID:???
foreach ( (reverse @read)[$page .. $page_end] ) { こうだった、鬱
0665名無しさん@お腹いっぱい。01/10/08 00:54ID:pELG7ByE
>いやロックだろ。
066663401/10/08 01:01ID:???
>>662
ありがとうございます。
さらに精進します。

みなさま。
ちょっとしつこかったです。反省。
スレ汚しスマソ。です。

恥ずかしいので>>660は削除しときます。
0667名無しさん@お腹いっぱい。01/10/08 01:02ID:lKBSfyUU
http://2ch.to/~webmaster/link.cgi?http://www.taruo.net/e/?

この、自身のREFERERも出さないリダイレクタってどういう原理なんでしょう?
0668名無しさん@お腹いっぱい。01/10/08 01:05ID:???
>>655
LWPにレジューム機能は存在しないもよう。
関連モジュール内で"content-range"という文字列を
探したけど該当する機能が見つからなかった。
LWPはでかいから見落としてる可能性もあるけどね。

レジュームしたけりゃ、自分で"Content-Range"ヘッダを付けて
ファイル保存処理をガリガリ書くしかないのかもしれない。
0669名無しさん@お腹いっぱい。 01/10/08 01:22ID:???
デンパ?
0670名無しさん@お腹いっぱい。01/10/08 01:28ID:???
>>668
見れないしスレ違いだし良くワカラナイけど
HTTP_REFERERはREMOTE_ADDRとかと違ってクライアント側で容易に書き換え
出来るわけ。
で、多分link.cgiがQUERYをラップして変わりに取りに行ってると思う訳
067166701/10/08 01:38ID:???
>>670
ありがとう
それをコードにするとどうなるでしょう?ってのは、たしかにスレ違いですね
こんなCGI探してますスレッドでもう一回聞いてみます
0672名無しさん@お腹いっぱい。01/10/08 14:19ID:xLWu69kM
indexを用いたマッチ検索で大文字と小文字を区別しない
方法はどの様なのが定番なのでしょうか?
0673JAPU@勉強中01/10/08 15:04ID:???
事前に lc または uc でホゲホゲ。
m//i 使っても良いと思うが。
0674名無しさん@お腹いっぱい。01/10/08 18:42ID:???
>>668
そうなんですか…どうも。
とりあえずContent-Rangeとやらを調べてみます。
0675名無しさん@お腹いっぱい。01/10/08 20:31ID:Kg6GidGE
>673
レスありがとです。
やっぱりindexだといったん大文字か小文字にするしか
無いんですかね?
変換のロスで正規表現の方が早くなったり。
0676名無しさん@お腹いっぱい。01/10/08 20:50ID:/cLj7636
>>675
検索対象データのコピーを作って、
そっちをあらかじめ大文字か小文字に統一しとくのは?
ディスクスペースは2倍必要だけど。
0677名無しさん@お腹いっぱい。01/10/08 21:33ID:???
そういうのもありですね。
けど検索対象のデータが結構ごちゃごちゃしてるんで
これ以上ファイルが増えるとちょっと(^^;
0678名無しさん@お腹いっぱい。01/10/08 23:35ID:???
>>677
検索するたびにそんな多数のファイルを開いてると
I/Oに負担かかって氏ぬです。
↑いまは亡き「とほほラウンジ」方式。
0679名無しさん@お腹いっぱい。01/10/09 00:28ID:???
selectってコスト高いって本当っすか
乱発するとダメ?
0680名無しさん@お腹いっぱい。01/10/09 01:08ID:qw3TKOks
I/O処理について便乗質問ですが
�@掲示板の全てcgiで制御する
�A最近の5件ほどhtmlで表示させてそれ以降(ログの表示)は
 cgiで制御する
�B書き込むたびに全てhtmlで出力(ページ数は5ページほど)させる
だと�Aが一番サーバに易しいですかね?
0681名無しさん@お腹いっぱい。01/10/09 01:56ID:???
>>679
ん? 聞いた事ないけど、何と比べて?
>>680
HTMLは静的、CGIは動的なコンテンツを提供してるって言えばいい?
一年に3人しか書き込まなくてROMが1000万人居るなら2
リロード代わりに見た人間全員が書き込むんなら1、
3は意味解らん、なら1ページに全部吐けば良いじゃん
0682名無しさん@お腹いっぱい。01/10/09 02:22ID:???
ココみたいな閑古板なら反って20スレ/PAGEの最終15記事表示くらいの方が良いと思うんだよなー
0683名無しさん@お腹いっぱい。01/10/09 02:23ID:???
いやiモードのサイトなんですよ。
そんでデータファイルは別に作っといてそれから
htmlファイルとして出力しようと思ったんだけど、
書き込みされるたびにhtmlファイルをすべて作り直すのも負担になるな…と。
だけどアクセスされるたびにcgiで処理する�@は論外かなと
まぁ一番一般的だけど。
んじゃ大抵の人間はログなんか読まないからTOPページだけhtmlで
出力しておくかなと思って。rom率とカキコ率で変わってくるけど
チャットじゃないから最初のページはhtmlにした方が効率が良いかと。
…何をいってるのかわからないと。
処理ごとの負担がデータ化されてるページとかあれば楽なんですけどね。
0684名無しさん@お腹いっぱい。01/10/09 02:47ID:???
1週間くらい各ページにアクセス解析つけとけば?
カキコのカウントもとればなおよし。
0685名無しさん@お腹いっぱい。01/10/09 02:57ID:???
つーかその辺は一般論に従うのが手っ取り早いんですよ
10年前の超オーバーヘッドなSCSIHDD使ってる鯖でHTML化とか言って
ガリガリファイル書き換えまくったら速攻でディスクビジーだろうし
結局鯖のuptimeと相談しながらってなるでしょ? それを一からやりたいなら
止めないけど・・・
で、頭の良い先人が色々考えた結果ROM比30:1ならHTMLの方が良いだろっつて
アナタが今みてるココとか紅茶板があるんすよ
0686名無しさん@お腹いっぱい。01/10/09 03:19ID:???
>頭の良い先人が色々考えた結果ROM比30:1ならHTMLの方が良いだろっつて

こういうの知りたかったんです。為になるです。
>684
そうですね。最初は負荷かかっても損して得とれみたいな
かんじで統計とってみようかなと思います。
まぁ一概にはいえないんでしょうけど→30:1
参考にしようと思います。
0687名無しさん@お腹いっぱい。01/10/09 13:29ID:???
10:1ぐらいだろ
書き出すhtmlのサイズにもよるが。
頻繁にアクセスするファイルはバッファに入るだろうし
0688名無しさん@お腹いっぱい。01/10/09 14:24ID:???
>頻繁にアクセスするファイルは
頭大丈夫ですか?
0689 01/10/09 15:10ID:???
@aiueo = "123";
@aiueo = "あいう";

if(@aiueo != 0){
foreach (@aiueo){
print "$_";
}
}

配列aiueoに"123"と"あいう"を格納したいのですが、
二つ目のあいうだけしか表示されません。。。
0690 01/10/09 15:19ID:???
もしかして、後から配列に値を加えたい場合は
@aiueo = "あいう";
このようにすると値が上書きされてしまいますね・・・(汗
すいません。
後から加えたい場合は必ず
push @formcheck, $Name;  か、
unshift @formcheck, $Name;  でやらなきゃいけないんでしょうか?
0691名無しさん@お腹いっぱい。01/10/09 15:20ID:???
>>689
pushなりunshiftなりしなさい。
push @array, $str;
# そもそも @array = $str というのはどうかと思うぞ。
0692名無しさん@お腹いっぱい。01/10/09 15:22ID:???
意味不明
@aiueo = "あいう";  これで'あいう'しか入ってないでしょ?
@aiueo = ("123","あいう");
こうしとけ つーかリファレンス嫁
0693 01/10/09 15:23ID:???
すいません、勉強不足でした。。
0694名無しさん@お腹いっぱい。01/10/09 17:05ID:???
<html>
<br>
0695名無しさん@お腹いっぱい。01/10/09 17:06ID:???
ぼほほ〜〜。
タグ辞書登録してたらクリックしてもうた〜。すんません。
0696名無しさん@お腹いっぱい。01/10/09 18:24ID:caK9Qd8A
変数の中にはいってる変数の名前からそれも評価するような
方法ないでしょうか?↓みたいなかんじです。

$bb="$aa";
$aa="ほげ";
print "$bb";

これだと何も出力されませんが
出力が ほげ と出るような方法は無いでしょうか?
■ このスレッドは過去ログ倉庫に格納されています