Use of implicit split to @_ is deprecated

21/08/2008 - 14:25 von Ferry Bolhar | Report spam
Hallo,

ich habe CSV-Records und möchte die Anzahl an Elementen
in diesen Records ermitteln. Die Records lese ich aus
einer Datei und verwende dabei die -n Option, sodass
ich sie direkt in $_ übergeben bekomme.

Demnach hàtte ich kurz und bündig

$sepcnt = split /,/;

geschrieben. Dann gibt der Compiler aber die im Betreff
erwàhnte Meldung aus, von der ich allerdings nicht weiß,
was ich davon halten soll. Ich sehe hier nirgendwo die
Variable @_ verwendet, weder explizit noch implizit.

Ich habe auch noch

$sepcnt = scalar split /,/;

probiert, um dem Parser deutlich zu zeigen, dass ich
das Ergebnis von split im skalaren Context verwenden
möchte (obwohl das aus der Zuweisung alleine schon
hervorgehen sollte). Aber es àndert sich leider nichts.

Weiß jemand, warum diese Meldung ausgegeben wird?

LG, Ferry

Ing Ferry Bolhar
Magistrat der Stadt Wien - MA 14
A-1010 Wien
E-Mail: ferdinand.bolhar-nordenkampf@wien.gv.at
 

Lesen sie die antworten

#1 Michael Holzt
21/08/2008 - 14:41 | Warnen spam
Ferry Bolhar wrote:
Weiß jemand, warum diese Meldung ausgegeben wird?



Doku lesen hilft:

| In scalar context, returns the number of fields found and splits
| into the @_ array. Use of split in scalar context is deprecated,
| however, because it clobbers your subroutine arguments.

"We're nympholeptics, desiring the unobtainable. We risk sanity for moments
of temporary enlightenment. So many ideas, so little memory. The last thought
killed by anticipation of the next. We feel an oberwhelming feeling of love;
we flow in unison." -- Jip (John Simm) in 'Human Traffic'

Ähnliche fragen