CPPFLAGS для препроцессора C, в то время как CXXFLAGS для компилятора C++.
См. здесь .
Выбор за вами.
Как указано в комментариях, JSON занимает меньше места, чем сериализованный массив. Я также проверил, быстрее ли JSON или сериализация, и, что удивительно, быстрее кодировать JSON, чем сериализовать. Однако десериализовать быстрее, чем декодировать JSON.
Это сценарий, который я использовал для тестирования:
<?php
function runTime(){
$mtime = microtime();
$mtime = explode(' ', $mtime);
$mtime = $mtime[1] + $mtime[0];
return $mtime;
}
?>
<pre>
<?php
$start = runTime();
$ser;
for($i=0; $i<1000; $i++){
$a = array(a => 1, x => 10);
$ser = serialize($a);
}
$total = runTime() - $start;
echo "Serializing 1000 times took \t$total seconds";
?>
<?php
$start = runTime();
$json;
for($i=0; $i<1000; $i++){
$a = array(a => 1, x => 10);
$json = json_encode($a);
}
$total = runTime() - $start;
echo "JSON encoding 1000 times took \t$total seconds";
?>
<?php
$start = runTime();
$ser;
for($i=0; $i<1000; $i++){
$a = unserialize($ser);
}
$total = runTime() - $start;
echo "Unserializing 1000 times took \t$total seconds";
?>
<?php
$start = runTime();
$json;
for($i=0; $i<1000; $i++){
$a = json_decode($json);
}
$total = runTime() - $start;
echo "JSON decoding 1000 times took \t$total seconds";
?>
</pre>
Переносимость: Winner JSON. JSON поддерживается на более широком спектре платформ, в то время как десериализация PHP поддерживается только (насколько мне известно) PHP. Хотя можно анализировать любой формат на любом языке, JSON имеет больше встроенных библиотек.
Future Proof: Winner JSON. JSON - это «стандарт» в том смысле, что Javascript является стандартом, и вряд ли он изменится в будущем. Группа PHP не дала никаких обещаний относительно будущего формата сериализации, и, хотя он вряд ли изменится в будущем, тот факт, что одна группа контролирует формат, означает, что в будущем вы можете получить нечитаемые данные.
Fidelity: Победитель PHP. Сериализация PHP позволит вам хранить данные с собственными типами данных PHP, включая объекты, определенные пользовательскими классами. JSON позволит вам хранить только общие примитивные типы, списки примитивных типов («массивы») и объекты пары ключ / значение. Сериализация PHP может дать некоторые преимущества здесь, если вы разрабатываете приложение PHP.
Размер файла: JSON имеет здесь небольшую победу, поскольку текущий формат сериализации PHP более подробный (поскольку он хранит больше информации).
Производительность: Кто знает, смотря по профилю.
Заключение: используйте JSON, если у вас нет веских причин использовать сериализацию PHP.
JSON позволит вам хранить только общие примитивные типы, списки примитивных типов («массивы») и объекты пары ключ / значение. Сериализация PHP может дать некоторые преимущества здесь, если вы разрабатываете приложение PHP.Размер файла: JSON имеет здесь небольшую победу, поскольку текущий формат сериализации PHP более подробный (поскольку он хранит больше информации).
Производительность: Кто знает, смотря по профилю.
Заключение: используйте JSON, если у вас нет веских причин использовать сериализацию PHP.
JSON позволит вам хранить только общие примитивные типы, списки примитивных типов («массивы») и объекты пары ключ / значение. Сериализация PHP может дать некоторые преимущества здесь, если вы разрабатываете приложение PHP.Размер файла: JSON имеет здесь небольшую победу, поскольку текущий формат сериализации PHP более подробный (поскольку он хранит больше информации).
Производительность: Кто знает, смотря по профилю.
Заключение: используйте JSON, если у вас нет веских причин использовать сериализацию PHP.
Кто знает, смотря по профилю.Заключение: используйте JSON, если у вас нет веских причин использовать сериализацию PHP.
Кто знает, смотря по профилю.Заключение: используйте JSON, если у вас нет веских причин использовать сериализацию PHP.
JSON более портативен, то есть вы можете более легко читать / писать в него с разных языков и т. Д. Если вы использовали сериализованные массивы PHP, вы могли бы легко использовать PHP только для доступа к нему.
Вы используете свои данные только с PHP? Если да: массивы, если нет: JSON.
Pro Array
Pro JSON
По SO было много таких вопросов.
Предпочитаемый метод хранения массивов PHP (json_encode vs serialize)
Короче: JSON лучше подходит для простых данных, но он не различает разницу между объектом и ассоциативным массивом. Сериализованные данные больше.
atm, json_encode () работает только с данными в кодировке UTF-8 .. следовательно, он не может кодировать такие символы, как "ñ", иначе он вернет NULL