Tach!
Dummerweise, benutze ich "|" aber gleichzeitig auch, um diese Variablen zu einer neuen zu verbinden:
$test = "$eins|zwei|$drei";
Warum machst du das und verwendest kein Array?
um dann zu schauen, ob mit count($test), $test auch wirklich aus 3 Teilvariablen zusammengesetzt ist.
count() auf einen String losgelassen ergibt 1. Was du da erzählst entspricht nicht dem was du tatsächlich vorliegen hast.
Was kann ich nun machen?
- Den Inhalt von den Teilvariablen escapen?
Wie auch immer du auf die 3 kommst, du musst dann einen Parser oder ähnliches aufsetzen, der die maskierten | übergeht, wenn du nicht ein |-losen Ersatz verwendest. Du musst dann auch dafür sorgen, dass dieser Ersatz nicht mit Nutztext verwechselt werden kann.
- Lieber nach einem Zeichen suchen, dass 100%ig nicht in den Teilvariablen vorkommt und das dann als Trennsequenz benutzen für $test?
- Gibt es noch eine andere Möglichkeit?
Für welche eigentliche Aufgabenstellung?
dedlfix.