Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erläuterung des PHP-Datenserialisierungstests

Detaillierte Erläuterung des PHP-Datenserialisierungstests

墨辰丷
墨辰丷Original
2018-05-18 14:52:081577Durchsuche

Dieser Artikel enthält hauptsächlich relevante Informationen zur detaillierten Erläuterung von Beispielen für PHP-Datenserialisierungstests. Er stellt hauptsächlich den Vergleich von msgpack, json und serialize vor. Freunde in Not können sich auf

PHP-Daten beziehen Beispiele für Serialisierungstests. Detaillierte Erklärung

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

Analytische Kommentare

Die grundlegenden Ergebnisse von Online-Suchen sind (wahrscheinlich die Version vor PHP7)

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

wird in PHP7 ausgeführt und das Ergebnis ist wie folgt

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

Verwandte Empfehlungen:

Native js verwenden, um Formularform zu implementierenSerialisierung (grafisches Tutorial)

PHP Serialisierung und ReverseDetaillierte Erläuterung der SerialisierungFunktionsbeispiele

JSONSerialisierung und ReverseSerialisierung Implementierungsmethoden (mit Code )

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des PHP-Datenserialisierungstests. 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