Christian Seiler: Emails auslesen

Beitrag lesen

Hallo Thorsten,

Hat jemand eine Idee, wie man das realisieren kann?

// Zeilen trennen
// verschiedene Zeilenarten von verschiednen Betriebsystemen berücksichtigen
// theoretisch sollten in einer Mail nur \015\012 vorhanden sein, jedoch
// weiß man ja nie
$zeilen = preg_split ("!\015\012|\015|\012!", $body);

// Array initialisieren
$variablen = array ();

// Alle Zeilen abarbeiten
foreach ($zeilen as $zeile) {
  // Leerzeile
  if (empty ($zeile)) {
    // ignorieren
    continue;
  }

// Ungültige Zeile
  if (strpos ($zeile, ': ') === false) {
    // ignorieren
    continue;
  }

// Extrahieren
  list ($var_name, $var_wert) = explode (': ', $zeile, 2);

// ins Array schreiben
  $variablen[$var_name] = $var_wert;
}

Du kannst dann mit $variablen['Name'], $variablen['Hobbys'], etc. auf die entsprechenden Werte zugreifen. (Ach ja, nur mal so am Rande: Es heißt eigentlich »hobbies« und nicht »hobbys«)

Viele Grüße,
Christian