ersetzen
EneR
- php
1 Zeichenkette aufsplitten
Vinzenz Mai0 Andreas St0 Tom0 Tom
0 dicon0 Tom
0 EneR
Hallo,
ICh möchte etwa aus den coordinaten ($coords) 100:101 100 in eine Variable ($x) speichern und 101 in eine zweite ($x).
Das geht nicht mit
$x = ereg_replace("***:","",$coords);
$y = ereg_replace(":***","",$coords);
Gibt es dafür nicht eine andere möglichkeit?
natürlich sollte das mit z.B. auch 10:183 funktionieren.
MfG EneR
Hallo,
ICh möchte etwa aus den coordinaten ($coords) 100:101 100 in eine Variable ($x) speichern und 101 in eine zweite ($x).
Gibt es dafür nicht eine andere möglichkeit?
es gibt explode().
Freundliche Grüße
Vinzenz
Hallo..
Abgesehen davon, dass du garnicht sagst, wie und wo du das hier
$x = ereg_replace("***:","",$coords);
$y = ereg_replace(":***","",$coords);
einsetzt, kann es so wohl auch nicht funktionieren. Nach dem ersten Ersetzen, kann er den Doppelpunkt nicht mehr finden, weil er schon mit $x ersetzt wurde.
Hello,
ICh möchte etwa aus den coordinaten ($coords) 100:101 100 in eine Variable ($x) speichern und 101 in eine zweite ($x).
Das geht nicht mit$x = ereg_replace("***:","",$coords);
$y = ereg_replace(":***","",$coords);
list($x,$y) = each(explode(':',$coords));
Nur mal so geraten, nicht überprüft...
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Hello,
Hello,
ICh möchte etwa aus den coordinaten ($coords) 100:101 100 in eine Variable ($x) speichern und 101 in eine zweite ($x).
Das geht nicht mit$x = ereg_replace("***:","",$coords);
$y = ereg_replace(":***","",$coords);list($x,$y) = each(explode(':',$coords));
Nur mal so geraten, nicht überprüft...
So, gelich mal überprüft und einen auf die Finger bekommen...
Das each() ist hier überflüssig, weil Du ja nur die Werte haben willst und nicht die Indexe des gerade mit explode() erzeugten Arrays. Außerdem liefert es immer nur das erste Element zurück...
Richtig wäre also
list($x,$y) = explode(':',$coords);
List ist ein Sprachkonstrukt. Die obige Anwweisung bedeutet also:
überführe in die Variablen $x und $y (= zwei Stück) die Werte der ersten zwei Arraylemente von der rechten Seite.
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Hi EneR,
nicht besonders elegant, aber klappt:
$coords = "100:101";
$x = substr("$coords", 0, 3);
$y = substr("$coords", 4, 3);
Grüße & schönes WE, dicon
Hello dicon,
nicht besonders elegant, aber klappt:
$coords = "100:101";
$x = substr("$coords", 0, 3);
$y = substr("$coords", 4, 3);
Die Lösung ist so unvollständig und damit nutzlos.
Wie lang die Ziffernketten sind, weiß EneR ja nicht.
Also müsste er erst das Format prüfen, die Position des Doppelpunktes feststellen, und dann die Teilstrings übernehmen.
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Vielen Dank Für die Zahlreichen Antworten!!!
Funktioniert jetzt!!!
EneR