PHP Bankverbindung zerlegen

Cumulonimbus

Lt. Junior Grade
Registriert
Feb. 2007
Beiträge
303
Hallo,

ich habe einen String der mittles eines Tags aus dem CMS kommt und folgenden Aufbau hat:

Kontonummer: 0000000001
Bankleitzahl: 0000000002
Kontoinhaber: Die Welt
Bankinstitut: Die Erdkugel

Daraus will ich die drei Werte in eine Variable packen

$ktn
$blz
$usr

Welche Funktion nehme ich, denn ich muss den Satz inkl. Umbruch ja zerlegen um die Werte zu erhalten. ereg_replace, str_replace oder explode und wie müsste dann ein Beispiel aussehen?
 
Du könntest hier auch sehr gut mit regulären Ausdrücken arbeiten.

Beispiel (getestet):


Korrigierter Code:
<?php

$bankdaten = "Kontonummer: 0000000001
Bankleitzahl: 0000000002
Kontoinhaber: Die Welt
Bankinstitut: Die Erdkugel";

$regex="#Kontonummer: (.*)\nBankleitzahl: (.*)\nKontoinhaber: (.*)\nBankinstitut: (.*)#";
if(preg_match ($regex, $bankdaten, $rückgabe)) {
echo 'Regex passt';
} else {
echo 'Regex passt nicht!';
}
echo $rückgabe[1]; //KTO
echo $rückgabe[2]; //BLZ
echo $rückgabe[3]; //Inhaber
echo $rückgabe[4]; //Institut
?>
 
Zuletzt bearbeitet:
Versuchts mal mit substr, strpos und strlen.

Beispiel: (hier zerlegt, kann man natürlich auch in einer Zeile schreiben)
$start = strpos ($ktnr, ": ")+2
$lenght = strlen($ktnr) - start
$erg = substr($ktnr , start,length)

Edit: Achsoooooo, der o.g. Text ist ein String, was?
Dann entweder die Regexp oder vorher nochn Explode auf CRLF.
 
oiisamiio schrieb:
perferkt fuer sql injection?

Diese SQL Injections, die nicht mal mehr ne Datenbank im Hintergrund brauchen, sind schon richtig fies, hm? :rolleyes: :D

Zu der eigentlichen Problemstellung wurde eh schon alles gesagt, abhängig von der Datenmenge würde ich auch den Regex als saubere Lösung bevorzugen.


so long
 
Du könntest auch einfach den String in seine zeilen zerlegen und dann dann alles cutten was vor ": " ist, dann erhältst du auch die Werte, ähnlich wie Chaos.Gentle vorschlägt.
 
Zurück
Oben