- ベストアンサー
Perlの書き方
$addr = $ENV{'REMOTE_ADDR'}; open(IN,"$log"); my @data = <DATA>; foreach(@data){ my($ip)=split(/\,/,$_); if($ip==$addr){$a=1;} if ($a !=1) { 処理1 } else { 処理2 } } close(DATA); $logに$addrが含まれている場合は処理2を実行させたいと↑のスクリプトを書いてみました。私の環境(パソコンの環境と、設置サーバーの環境)では正常に動いているようですが、人に(パソコンの環境と、設置サーバーの環境)よっては、処理1が実行されてしまうようです。書き方は、これで間違っていませんでしょうか? もし間違っていないのでしたら、環境によって$logに$ipが記録されていないのかも知れません。perlの知識はあまりありませんが、よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
お礼
ありがとうございます。大変勉強になりました。