如何更好地存储PHP数组:json_encode与serialize?比较与性能
大家好!我是PHP新手,正在尝试理解数组的存储。我有几个脚本用于处理数据库中的数据,并希望将结果缓存到文件中,以避免每次都执行繁重的查询。
问题在于,我无法在json_encode和serialize之间做出选择。两者都适合将数组转换为字符串,但我不明白它们的区别以及哪个更好用。
以下是我的代码示例:
```php
$data = [
'users' => [
['id' => 1, 'name' => '伊万', 'email' => 'ivan@example.com'],
['id' => 2, 'name' => '玛丽亚', 'email' => 'maria@example.com'],
['id' => 3, 'name' => '彼得', 'email' => 'petr@example.com']
],
'timestamp' => time(),
'settings' => ['theme' => 'dark', 'lang' => 'ru']
];
// 选项1
$json = json_encode($data);
file_put_contents('cache.json', $json);
// 选项2
$serialized = serialize($data);
file_put_contents('cache.ser', $serialized);
```
我感兴趣的是