php将数组保存到文件/数据库的方法
墨初 编程开发 1483阅读
php将数组变量的内容存入文件或数据库中,需要先将数组转换成字符串,再进行保存。可以利用php的serialize()函数,json_encode函数来实现,下面是实现方法。
php数组保存到文件,数据库的方法
1、serialize() 函数保存数组到文件或数据库中
serialize():函数可以将数组序列化为一个字符串,这个字符串可以存放到文件或数据库中。
例:
$arr = array( 'name' => '墨初', 'host' => '73so.com' ); echo serialize($arr); // a:2:{s:4:"name";s:6:"墨初";s:4:"host";s:8:"73so.com";}
(1)、serialize() 函数处理过的数组会变成一个字符串,您可以将字符串存放到文件或数据库中
(2)、在调用数据时,您可以使用 unserialize() 函数将字符串还原为数组
例:
$str = 'a:2:{s:4:"name";s:6:"墨初";s:4:"host";s:8:"73so.com";}'; var_dump(unserialize($str)); //字符串还原为数组 array(2) { ["name"]=> string(6) "墨初" ["host"]=> string(8) "73so.com" }
2、json_encode() 函数保存数组到文件或数据库中
json_encode():可以将数组转为json格式的字符串,此字符串也可以保存到文件或数据库中。
例:
$arr = array( 'name' => '墨初', 'host' => '73so.com' ); echo json_encode($arr); // {"name":"\u58a8\u521d","host":"73so.com"}
(1)、如果使用 json_encode 转换的字符串,中文被转义了,可以在本博客查找解决方案
(2)、json 格式的字符串可以通过 json_decode() 函数来还原为数组
例:
$json = '{"name":"\u58a8\u521d","host":"73so.com"}'; print_r(json_decode($json,true)); // Array ( [name] => 墨初 [host] => 73so.com )