Heim  >  Artikel  >  Backend-Entwicklung  >  So serialisieren und deserialisieren Sie Daten in PHP

So serialisieren und deserialisieren Sie Daten in PHP

墨辰丷
墨辰丷Original
2018-06-06 15:51:351318Durchsuche

In diesem Artikel wird hauptsächlich die Serialisierung und Deserialisierung von Daten in PHP vorgestellt. Ich hoffe, dass er für alle hilfreich ist.

php verwendet tatsächlich zwei Funktionen zum Serialisieren und Deserialisieren von Daten: serialisieren und unserialisieren.
Serialisieren Formatieren Sie das Array in eine geordnete Zeichenfolge
UnserialisierenStellen Sie das Array in ein Array wieder her
Zum Beispiel:

$user=array('Moe','Larry','Curly'); 
$user=serialize($stooges); 
echo &#39;<pre class="brush:php;toolbar:false">&#39;; 
print_r($user); 
echo &#39;<br />&#39;; 
print_r(unserialize($user));

Ergebnis:

a:3:{i:0;s:3:"Moe";i:1;s:5:"Larry";i:2;s:5:"Curly";}
Array ( [0] => Moe [1] => Larry [2] => Curly )

Beachten Sie, dass Zeichen wie doppelte Anführungszeichen, einfache Anführungszeichen, Doppelpunkte oder chinesische Zeichen möglicherweise deserialisiert werden wird es Probleme mit verstümmelten Zeichen oder gestörter Formatierung geben.

Um das Problem mit verstümmeltem Code zu lösen, können Sie die beiden Funktionen base64_encode und base64_decode verwenden.
Zum Beispiel:

$user=array(&#39;Moe&#39;,&#39;Larry&#39;,&#39;Curly&#39;); 
$user=base64_encode(serialize($user)); 
$user=unserialize(base64_decode($user));

Auf diese Weise treten keine Probleme mit verstümmeltem Code auf, aber Base64-Kodierung erhöht die Länge der gespeicherten Zeichenfolge .

Aus dem Obigen können wir eine eigene Serialisierungs- und Deserialisierungsfunktion wie folgt zusammenfassen:

function my_serialize($obj_array){ 
  return base64_encode(gzcompress(serialize($obj_array))); 
} 
//反序列化 
function my_unserialize($str){ 
  return unserialize(gzuncompress(base64_decode($str))); 
}

Zusammenfassung: Das Obige ist Der gesamte Inhalt von Wir hoffen, dass dieser Artikel für das Studium aller hilfreich sein wird.

Verwandte Empfehlungen:

Detaillierte Erläuterung der Verwendung und Beispiele der Konfigurationsdatei der PHP-Template-Engine Smarty in Template-Variablen

Info PHP-Leselösung für verstümmelte chinesische Zeichen in MSSQL-JSON-Daten

Verwendung und Beispielanalyse reservierter Variablen in der PHP-Template-Engine Smarty

Das obige ist der detaillierte Inhalt vonSo serialisieren und deserialisieren Sie Daten in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn