0

我正在做一个供个人使用的小型爱好项目,它需要一种存储一些值的方法。我能想到的三种方法是使用:MySQL数据库、XML文件或 HTML5 的LocalStorage(如果您能想到其他方便的方法,请发表评论)。

现在,由于我可能想从另一个浏览器(例如移动设备)访问相同的值,因此LocalStorage显然不是这样做的方法。现在谈到XML,我知道它只是作为传输数据的一种手段,而数据存储应该在MySQL中完成。然而,由于这是一个小项目,只需要一个不超过几千字节的 XML 文件,感觉在这种情况下使用 XML 比设置 MySQL 数据库更方便。我对吗?

假设我想使用 XML,我如何使用a) PHP 和b) JQuery 或其他方式附加一些节点?你认为哪一种方法最方便?

我发现很少有写得很好的例子来说明如何做到这一点(尤其是使用 JQuery,我无法找到如何以直接方式附加 XML 文件的例子),所以如果你可以附上一些示例代码进行比较,谢谢!

4

1 回答 1

4

首先 - jQuery 是客户端脚本库。这意味着使用 jQuery(包括 XML 文件操作)执行的操作是在客户端完成的,不会影响服务器端。有人可能会说 jQuery 可以通过使用 AJAX 在服务器端执行操作,但实际上执行操作的是服务器脚本 (php/perl/asp(x))。

因此,假设您有少量数据需要查询和更新。这可以通过使用“平面”文件系统或使用数据库来完成。

  1. 使用平面文件 - CSV 或 XML 是简单的选择。
    • CSV/XML 文件可以使用file-get-contentsfile_put_contents进行操作。如果您选择使用 XML,您可以使用出色的SimpleXML库(可以在此处找到基于示例的指南)使用 XML 允许您创建高级日期结构,
    • XML 和 SimpleXML(可以在此处找到基于示例的指南)非常棒。使用 XML 还允许您创建高级日期结构
    • 缺点是更新平面文件将意味着相当大的安全风险,因为您需要向网站的其中一个文件夹授予写入权限,这通常是个坏主意。
  2. DB - MySQL 或 SQLite(如 @garrett-albright 建议的那样)一开始似乎有些矫枉过正,但使用 SQL 实际上会节省您的时间(因为代码会更简单,您将使用经过良好测试和记录的对象)并且有许多CRUD生成器和类可以为您完成大部分工作。使用数据库,您可以使用
    • MySQL - 很棒的数据库,似乎是 PHP 的 BFF,易于使用,文档非常详细,并且通常免费提供托管包。
    • SQLite - 我在小型数据库中的首选武器,不需要服务即可运行,几乎是零配置数据库。
    • 这两个数据库选项都支持PDO,这将允许您编写代码并自由更改数据库和平台。
于 2012-04-22T10:29:12.633 回答