Suche Tipp für dies [bitte klicken]

Frederick

nicht mehr wegzudenken
Hallo.
Ich hab hier ein kleines Problemchen,
da wollt ich mal so in die Runde fragen...
Also ich hab hier nen String:

1092329456.969 24 192.168.101.55 TCP_DENIED/403
1396 GET http://www.google.de/url? - NONE/- text/html

wie man sieht, sind die Teile durch Leerzeichen getrennt.
Die Einzel-Teile sollen folgende Bezeichnungen haben:
time elapsed remotehost code/status bytes method url
rfc peerstatus/peerhost type

Ich hoffe bis hierher kann man mir folgen.
Den String wollt ich in ein Array zerlegen,
hat dann auch geklappt, allerdings sollen ja
ja die einzelnen Teile des Strings auch den obigen Namen
entsprechen, die
ich auch angezeigt haben möchte. Wenn man jetzt
mit dem Befehl explode den String in ein Array
umwandelt, und dann mit "array_keys" die Bestandteile
sich ausgeben lässt, heissen die
ja erst 0,1,2 und so weiter. Hab gar keine Ahnung, wie
ich jetzt den Bestandteilen die gewünschten Bezeichnungen gebe.
Am Besten ich füg hier mal einen Teil meines Skripts ein:
Also der erste Teil des Strings lautet:
$adresse="1092329456.969 24 192.168.101.55 TCP_DENIED/403
1396 GET";
daraufhin sag ich dann:
$adressteile=explode(" ",$adresse);
damit er mir nicht nur die Werte sondern auch
die bestandteile mit angibt, sag ich:

$namen=array_keys($adressteile);
$zaehler=count($namen);

for ($i=0; $i<$zaehler; $i++) {
echo "Feldname: ",$namen[$i]," Inhalt: ",$adressteile["$namen[$i]"], "<br>";
}
bei der Ausgabe heissen die bestandteile eben 0,1,2... ,
aber nicht time, elapsed..und so weiter..
...daher meine Frage...wie schreib ich das?
Also meine einzige Idee, war dann php es so zu verklickern:
vor zeile $adressteile=explode(" ",$adresse); ne route
zu setzen, und die zeile erstmal zu deaktivieren
und dann stattdessen zu sagen:
$adressteile["time"]=1092329456.969;
$adressteile["elapsed"]="24";
$adressteile["remotehost"]="192.168.101.55";
$adressteile["code/status"]="TCP_DENIED/403";
$adressteile["bytes"]="1396";
$adressteile["method"]=GET;
und dann wieder den array_keys -befehl anwenden, dann
hauts natürlich hin,
er gibt mir meine definierten Bestandteile aus, aber ich fürchte,
das ist
nicht ganz im Sinne, den String in ein Array zu zerlegen, daher
stell ich
mir, oder jemand der´s weiss die Frage---gehts auch anders?

Naja, hoffentlich hab ich das jetzt halbwegs verständlich rübergebracht.

Jetzt hab ich noch ne andre Frage zum dem Teil des Strings:
http://www.google.de/url?
Wenn ich den Teil mit "parse_url" und anschliessend wieder mit
"array_keys" zerlege,
krieg ich ja ohne Probleme den Inhalt mit Namen der korrekten
Bestandteile.

Wenn ich jetzt aber die url einfach nur ausgeben will, also
so: "www.google.de" gibs hierfür nen speziellen Befehl?

Letzte Frage:
Gibs nen Befehl womit man Byte in KB umrechen kann?
Ich habs mit ner Funktion gemacht und dann
gesagt $byte\1000 hat auch geklappt, aber ich dachte, da gibs
noch einen speziellen Befehl.

Am liebsten würd ich mal das ganze Skript reintun,
aber aufgrund der Länge frag ich besser mal
an die Moderatoren oder Admins: Darf ich?
 
Original geschrieben von Frederick
Letzte Frage:
Gibs nen Befehl womit man Byte in KB umrechen kann?
Ich habs mit ner Funktion gemacht und dann
gesagt $byte\1000 hat auch geklappt, aber ich dachte, da gibs
noch einen speziellen Befehl.

Und das hat geklappt? Kann ich mir nicht vorstellen, ich nehme dafür $byte/1024.
 
@perry
mein ich ja nicht \ sondern /.
Aber es geht offenbar auch mit /1000.

Hast du vielleicht noch über den anderen Teil
meiner Frage noch nen Tipp für mich?
 
Mit 1000 geht es nicht den 1024 Byte sind ein Kilobyte!

Von dem anderen Teil habe ich keinen blassen Schimmer.
 
Oben