2008/4/21 dv0r4k <[EMAIL PROTECTED]>:
> Gabisa juga kang:
>
>  foreach my $line (<LOG>) {
>        print "$line";
>  }

> > >  foreach (<LOG>) {
> > >       print "x";
> > >  }

Itu di atas dua2nya sama aja masalahnya. <LOG> di atas dua2nya
contextnya adalah array, makanya isi filenya semuanya diload ke
memory, disimpan ke dalam array implicit @_ baru satu per satu
di-iterate ke $line (yg atas) atau $_ (yg bawah).

Kalo mau diload ke memory line by line, contextnya harus scalar, gak
boleh array. Jadi harus $line = <LOG> (gak boleh @line = <LOG>).
foreach yg di dalem (...) itu harus array, makanya contextnya jadi
array.

Solusinya antara lain pake:

    while (my $line = <LOG>) {
        # ...
    }

atau pake CPAN module Tie::File.

Ronny

-- 
Berhenti langganan: [EMAIL PROTECTED]
Arsip dan info: http://linux.or.id/milis

Kirim email ke