如何将数组存储在文件中,以便以后使用PHP作为数组进行访问?
2022-08-30 08:54:06
我只想快速存储一个从远程API获得的数组,这样我就可以在本地主机上搞砸它。
所以:
- 我目前有一个数组。
- 我希望人们使用数组而不必从API中获取它。
这里不需要效率等,这不是为了一个实际的网站,只是为了获得一些清理/格式化方法等
有没有像store_array()
或restore_arrray()
这样的函数?!
我只想快速存储一个从远程API获得的数组,这样我就可以在本地主机上搞砸它。
所以:
这里不需要效率等,这不是为了一个实际的网站,只是为了获得一些清理/格式化方法等
有没有像store_array()
或restore_arrray()
这样的函数?!
执行此操作的最佳方法是 JSON 序列化。它是人类可读的,您将获得更好的性能(文件更小,加载/保存速度更快)。代码非常简单。只有两个功能
示例代码:
$arr1 = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
file_put_contents("array.json",json_encode($arr1));
# array.json => {"a":1,"b":2,"c":3,"d":4,"e":5}
$arr2 = json_decode(file_get_contents('array.json'), true);
$arr1 === $arr2 # => true
您可以使用此示例轻松编写自己的store_array和restore_array函数。
有关速度比较,请参阅最初来自存储 PHP 数组的首选方法的基准测试(json_encode与序列化)。
如果不需要转储文件是人类可读的,则只需序列化()
数组即可。
存储:
file_put_contents('yourfile.bin', serialize($array));
检索:
$array = unserialize(file_get_contents('yourfile.bin'));