dedlfix: Daten maskieren vorm Speichern in einer Session?

Beitrag lesen

echo $begrüßung;

Es ist schon eine Weile her, als ich mir das letzte Mal die serialisierte Darstellung von Werten anschaute.

serialize('foo"bar') ergibt s:7:"foo"bar";
  unserialize(serialize('foo"bar')) ergibt foo"bar

Es wird keine Maskierung der Trennzeichen verwendet. Trotzdem können die Daten ordentlich wiederhergestellt werden. Durch die vorangestellte Längenangabe ist eindeutig festgelegt, wieviel Zeichen zu den Nutzdaten gehören. Kommt also so ein Trennzeichen in den Nutzdaten vor, liegt es ja innerhalb der durch die Längenangabe festgelegten Zeichen und wird damit als Nutzdatenbestandteil interpretiert. Das ist eine ebenso sichere Vorgehensweise wie Quotierung und Maskierung ohne vorangehende Längenangabe. Im Grunde genommen sind selbst die "" überflüssig.

echo "$verabschiedung $name";