我的代码有问题。我的目标是在 txt 文件中写入数据并检索该数据。在写入数据时,我使用了一个数组。我添加了 FILE_APPEND 参数来重写文本文件。将数据写入文本文件后,我首先对其进行序列化。然后在写入数据后,我使用 file_get_contents 检索它。我也将其反序列化以以数组形式显示。
现在我的问题是。如果我添加新数据,文本文件将被覆盖,但会将我的数据显示到数组中。它将始终获得索引“0”的第一个索引。我无法获得所有序列化数组。
这是我的代码:
$data_add = array(
array(
'restaurant_id' => $restaurant_id,
'new_lat' => $new_lat_entry,
'new_long' => $new_long_entry,
'date_updated' => date('Y-m-d H:i:s')
)
);
$serialize_data = serialize($data_add);
file_put_contents("test.txt", $serialize_data, FILE_APPEND | LOCK_EX); //write the text file
...
$array = unserialize(file_get_contents('test.txt'));
print_r($array); //display it
我的示例 .txt 文件
a:1:{i:0;a:4:{s:13:"restaurant_id";s:4:"1212";s:7:"new_lat";s:8:"14.69327";s:8:"new_long";s:9:"120.96785";s:12:"date_updated";s:19:"2013-11-14 08:34:50";}}
a:1:{i:0;a:4:{s:13:"restaurant_id";s:4:"1229";s:7:"new_lat";s:8:"14.61431";s:8:"new_long";s:9:"120.99054";s:12:"date_updated";s:19:"2013-11-14 08:35:10";}}
但我在数组中得到的是:
Array
(
[0] => Array
(
[restaurant_id] => 1212
[new_lat] => 14.69327
[new_long] => 120.96785
[date_updated] => 2013-11-14 08:34:50
)
)
如何从我的数组中检索所有值?