无数据库的方法在PHP中存储一些数据

时间:2011-02-25 17:34:51

标签: php database data-storage

我是PHP的新手但不是一般的编程。我想存储我从Web服务检索的一些数据,但我认为我不想要一个数据库。首先,数据将经常更新,其大小始终小于1MB。 在Apache上使用PHP的最佳,快速但有效的方法是什么?注意:我使用的是托管服务提供商,因此我不喜欢自定义安装。 也许,单身人士? 感谢

7 个答案:

答案 0 :(得分:4)

使用数据库。否则你会被困在序列化文件。但要做到这一点,你需要实现并发控制。

节省时间和精力,并使用数据库。

答案 1 :(得分:1)

我认为问题是,数据存储多长时间?如果您要存储数据直到更换或长于单个用户会话,我个人认为数据库是理想的解决方案 - 它可以非常有效地快速更改和检索数据。

如果仅为单个用户会话保留数据,则可以使用PHP会话将数据存储为数组。

另一种方法是将数据存储在文件中。但是,这在检索少量数据方面效率会低得多。

答案 2 :(得分:0)

尝试使用平面文件。如果您不需要进行任何类型的花式查找,那就是。

答案 3 :(得分:0)

数据库的明显替代方案是文件存储。 PHP可以读写好的旧磁盘文件;看fopen(),fread(),fwrite()然后一些。您需要在服务器上指定文件夹(除了public_html空间)以获取文件,并提出命名方案和数据格式。

答案 4 :(得分:0)

您可以使用云服务(亚马逊,Google ......)。但是,除了使你的应用程序更加复杂和脆弱以及你自己更嘻嘻哈哈之外,我认为使用普通数据库或平面文件没有任何好处。

答案 5 :(得分:0)

您可以使用serialize将数组保存在纯文本文件中。

这样的东西
$fh = fopen("db.txt", "w");
fwrite($fh, serialize(array("field"=>"data"));
fclose($fh);

使用fread和模式“r”再次检索它,然后使用方法unserialize

$fh = fopen("db.txt", "r");
$data = unserialize(fread($fh));
fclose($fh);

然后管理数组中的数据。

答案 6 :(得分:0)

您可以将数据存储在xml文件中,并使用simplexml加载管理数据,例如:

$ xml = simplexml_load_file(“test.xml”);

然后,您可以获得您定义的节点列表并执行您的操作。如需进一步参考,请查看以下内容:

SimpleXML tutorial