CSV-Import Telefonbuch - Verketten von Werten

Kann ich beim einer CSV die Werte aus zwei Spalten in ein Feld schreiben. Ich würde gerne dipalyname zusammen setzen aus zwei anderen Feldern in meiner Quelldatei, ohne dass ich die Quelldatei modifizieren muss.

Mit dem ±Zeichen geht es jedenfalls nicht, aber vllt. kenne ich auch einfach nicht die passende Syntax.

1 Like

Das würde ich auch suchen, dazu noch die Option, falls das Feld leer ist, es einfach zu ignorieren
Besser noch: Display Name sollte Firma oder nachname + Vorname werden ;)?
Danke

Kann man machen. Bei dem Punkt “Variablen” kann man PHP Syntax verwenden.
Es sollte also zum Beispiel so aussehen:

return $row['LASTNAME'] . ', ' . $row['FIRSTNAME'];

Zum zusammenfügen wird also ein Punkt verwendet. Genauso kann man hier weitere PHP String Operationen oder auch z.B. if Abfragen verwenden.
Leere Felder ignorieren sieht also so aus:

if (empty($row['VIP_von'])) {return "";} else {return $row['VIP_von'];}

Es wird der Wert des Feldes genommen, oder das Feld wird nicht gesetzt, wenn die Spalte leer ist.
Damit kann man eigentlich alles so verbiegen wie man es braucht.

1 Like

Tja, hätte ich in der Schule mal besser aufgepasst :slight_smile: Vielen Dank Jonas.

$filter = array("ä","Ä","ö","Ö","ü","Ü");
$ersetzen = array ("ae","Ae","oe","Oe","ue","Ue");
if (empty($row['Name'])) {
  $row['Organisation'] = str_replace($filter,$ersetzen,$row['Organisation']);
  return $row["Organisation"];
} else {
  $row['Organisation'] = str_replace($filter,$ersetzen,$row['Organisation']);
  $row['Vorname'] = str_replace($filter,$ersetzen,$row['Vorname']);
  $row['Name'] = str_replace($filter,$ersetzen,$row['Name']);
  return $row['Vorname'] ." ". $row['Name'] ." - ". $row['Organisation'];
}

Hier kann man dann auch noch mit IF arbeiten ggfs

1 Like

Mir war nicht klar, dass man da munter PHP verwenden kann. Tja, wie sagt meine Mutter immer “Kannst alt werden wie ne Kuh und lernst immer noch dazu”.

Ja da kannst dich austoben wen du willst.

1 Like