Heim  >  Artikel  >  Backend-Entwicklung  >  Informationen zum Testen der PHP-Datenserialisierung

Informationen zum Testen der PHP-Datenserialisierung

小云云
小云云Original
2018-01-26 14:14:161319Durchsuche

Dieser Artikel stellt hauptsächlich relevante Informationen zur detaillierten Erläuterung von PHP-Datenserialisierungstestbeispielen vor. Er stellt hauptsächlich den Vergleich von msgpack, json und serialize vor. Ich hoffe, dass er allen helfen kann.

Detaillierte Erläuterung des Beispiels für einen PHP-Datenserialisierungstest

Testcode


$msg = ['test'=>23];
$start = microtime(true); 
for($i=0;$i<100000;$i++){
  $packMsg = msgpack_pack($msg);
}
echo &#39;pack len:&#39;.strlen($packMsg)."\r\n";
$end = microtime(true);
echo &#39;run time:&#39;.($end-$start).&#39;s&#39;."\r\n"; 
echo &#39;memory usage:&#39;.(memory_get_usage()/1024)."KB\r\n";
/*
$start = microtime(true); 
for($i=0;$i<100000;$i++){
  $jsonMsg = json_encode($msg);
}
echo &#39;json len:&#39;.strlen($jsonMsg)."\r\n";
$end = microtime(true); 
echo &#39;run time:&#39;.($end-$start).&#39;s&#39;."\r\n"; 
echo &#39;memory usage:&#39;.(memory_get_usage()/1024)."KB\r\n";

$start = microtime(true); 
for($i=0;$i<100000;$i++){
  $packMsg = serialize($msg);
}
echo &#39;php len:&#39;.strlen($packMsg)."\r\n";
$end = microtime(true);
echo &#39;run time:&#39;.($end-$start)."s\r\n";
echo &#39;memory usage:&#39;.(memory_get_usage()/1024)."KB\r\n";*/

Ausführungsergebnisse


pack len:7
run time:0.024219989776611s
memory usage:354.4765625KB
json len:11
run time:0.010890007019043s
memory usage:354.1796875KB
php len:22
run time:0.010586977005005s
memory usage:353.8828125KB

Analyse und Kommentare

Die grundlegenden Ergebnisse überprüft online sind alle Ja (es wird geschätzt, dass es sich um eine Version vor PHP7 handelt)


运行速度 serialize<json<msgpack
长度  serialize>json>msgpack
内存消耗 serialize<json<msgpack //不过近乎一致

Führen Sie es in PHP7 aus und die Ergebnisse sind wie folgt


运行速度 serialize<msgpack<json  //这里出现了变化
长度  serialize>json>msgpack
内存消耗 serialize<json<msgpack //不过近乎一致

Verwandte Empfehlungen:

jQuery-Formularserialisierungsbeispiel, Code-Beispielfreigabe

Detaillierte Erklärung von PHPs Sicherheitslücke bei der Sitzungsdeserialisierung

Hinweise zur JQuery-Formularserialisierung

Das obige ist der detaillierte Inhalt vonInformationen zum Testen der PHP-Datenserialisierung. 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