使用小型XML作为数据库 - 查询的最佳方式

时间:2012-04-22 09:33:13

标签: php xml database jquery

我正在开发一个供个人使用的小型爱好项目,这需要一种方法来存储一些值。我可以提出的三种方法是使用: MySQL 数据库, XML 文件或HTML5的 LocalStorage (请发布一个评论是否有其他方便的方法可以想到)。

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

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

我发现很少有写得很好的例子(特别是对于JQuery,我无法找到如何以简单的方式附加XML文件的例子),所以它会是如果你能附上一些示例代码进行比较,真棒!谢谢!

1 个答案:

答案 0 :(得分:4)

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

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

  1. 使用平面文件 - CSV或XML是最简单的选择。
    • 可以使用file-get-contentsfile_put_contents操纵CSV / XML文件。如果您选择使用XML,则可以使用优秀的SimpleXML lib(可以找到基于示例的指南here)使用XML可以创建高级日期结构,
    • XML和SimpleXML(基于示例的指南可以找到here)非常棒。使用XML还可以创建高级日期结构
    • 缺点是更新平面文件将意味着相当大的安全风险,因为您需要为您网站的某个文件夹提供写入权限,这通常是个坏主意。
  2. 数据库 - MySQL或SQLite(正如@ garrett-albright sudgested)起初看起来似乎有些过分,但使用SQL实际上会节省你的时间(因为代码会更简单,你将继续经过充分测试,记录的对象)并且有许多CRUD生成器和类可以为您完成大部分工作。使用DB可以使用
    • MySQL - 伟大的数据库,似乎是PHP的BFF,易于使用,非常好的文档,通常免费提供托管包。
    • SQLite - 我在小型数据库中的首选武器,不需要运行服务,实际上是零配置数据库。
    • 这两个数据库选项都支持PDO这将允许您编写代码一并自由更改数据库和平台。