Hi,
@arr_daten_splitted = split(/#/,$_); # Daten als Array
$url = @arr_daten_splitted[0];
$descr = @arr_daten_splitted[1];
$prio = @arr_daten_splitted[2];
$ip = @arr_daten_splitted[3];
$port = @arr_daten_splitted[4];wozu dient hier das Array?
weil ich, wie gesagt insgesamt 56 datensätze der form: www.google.de#Suchmahscine#1#123.456.789.101#80 habe... und die werden nun gesplittet um sie in das hash zu speichern
%daten_all = ( $id => {'URL',$url,'DESCR',$descr,'PRIO',$prio,'IP',$ip,'PORT',$port})
ich dachte, dass ein hash nur auf keinen "key hört", wenn ich also einen neuen key generiere ($id++) darf perl das doch nicht über den vorherigen speichern, oder?
Nein, darf es nicht. Wenn Du aber die Variable überschreibst, darf es nichts anderes tun, als die Variable zu überschreiben. Egal, was vorher mal drin war.
welche Variable? id hat doch in jedem schleifendruchgang einen anderen wert. und %daten_all wird doch nicht überschrieben, sondern nur ein neues element (ansprechbar mit der neuen id) erzeugt, oder?
malte