Что быстрее? Какие-нибудь тесты / тесты?
PHP json_decoding против синтаксического анализа XML
Ответы (1)
json_decode()
быстрее. Без обсуждения. Однако маржа может быть измерена только для определенного типа XML-документа. Маршаллинг XML-RPC не так уж далек от JSON, например. Но в любом случае вы должны решить, какие данные вы хотите передать или сохранить:
JSON подходит для представления скалярных типов данных, массивов или объектов.
XML - это, прежде всего, семейство форматов документов. Вы можете использовать его для сериализации типов данных из любого языка программирования; но это не его цель. Думайте о XML как о микробазах документов.
Так что это действительно сравнение яблок с книгами.
@StaxMan: следует ненаучное доказательство. Обратите внимание, как этот пример уже искажен в пользу JSON из-за использования неоптимальной псевдоструктуры данных.
$json = <<<END
[55, "text goes here", 0.1]
END;
$xml = <<<END
<array>
<int>55</int>
<string>text goes here</string>
<float>0.1</float>
</array>
END;
for ($i=0,$t=t(); $i<100000; $i++) {
json_decode($json);
}
echo "json ", t(-$t), "\n";
for ($i=0,$t=t(); $i<100000; $i++) {
simplexml_load_string($xml);
}
echo "xml ", t(-$t), "\n";
function t($t1=0) {
$a = explode(" ", microtime());
return $a[0] + $a[1] + $t1;
}
Результат:
json 1.6152667999268
xml 2.9058270454407
Опять же, ничего не сказать. Но для JSON это теоретическое преимущество.