我应该使用SQL还是XML?

时间:2014-02-28 14:42:16

标签: php mysql sql xml

我想升级我的网站,以便简单快捷地添加新项目甚至条目。我最初的想法是升级它以包含php和一个sql数据库但我不想每次我想要添加一个新项目时都要继续登录MySQL而且我真的不想花很多时间在一个管理部分为我的网站,所以我的第二个想法是使用PHP和XML创建一个系统,我可以通过FTP拖放文件夹,让我的网站发现每个文件夹,为每个发现的文件夹创建一个div,并使用XML文档和媒体在每个文件夹中填充其DIV。

基本上我应该坚持使用php和MySQL,或者使用XML对我的网站同样有效。 我的网站只是一个投资组合。

2 个答案:

答案 0 :(得分:2)

如果选择在优化用于存储和检索数据的数据库服务器之间,或者每次都手动解析XML文件,请选择数据库。

答案 1 :(得分:1)

我为一些小网站(每个不到10页)制作了一些小的后端区域,并且这样做的学习方式与您描述的方式使用XML的实践经验相差无几。

我认为很多“适用性” - 这就是你所要求的 - 与你计划如何将存储在xml中的数据转换为网站有关。

例如,我为婚礼摄影网站制作了一个小博客,该网站解析一个小的xml文件,并在找到每个博客元素时,将此帖子中的内容注入页面。如果你是狡猾并在容器元素上提供HTML / XHTML的默认命名空间,在我的情况下,并使用普通的HTML / XHTML标记描述下面的所有内容,那么你可以简单地将所有子节点注入到HTML / XHTML中页面只有几行PHP ...您可以在生产之前验证您在XML文档中编写的XHTML / HTML。这种活动完全有效 - 这是打开文件,读取xml并注入页面的简单过程。

有些MySQL人可能会发现这是一种奇怪的做事方式,但我发现小网站很有用,过了一段时间后你会发现自己很容易创建类似的功能 - 例如客户推荐列表。

现在,如上所述构建某种后端来更新博客文章或孤立到单个页面的小文本片段是很简单的,对于小型投资组合网站我没有看到任何问题。

然而,就像我自己喜欢做这类事情一样 - 只要网站超出几页,就很难管理。

困难在于 - 我认为 - 与像MySQL这样的XML和数据库属于两个独立的活动域的事实有关,因此它们是为不同目的而“构建”的。我的意思是XML是面向文档的格式,我们倾向于使用它来描述特定的“对象” - 通常是根据词汇表的文档本身(例如网页 - HTML)。数据库建模或表达数据之间的关系 - 因此称为“关系数据库”。这使得后者对网站更有用,因为它更容易存储和提取可能与用户正在查看的内容相关/感兴趣的智能数据。想想一个电子商务网站。如果您使用XML文档来包含产品数据,那么比使用MySQL更难以提取相关产品,而且管理起来也要困难得多 - 想想1000种产品。

当然,使用XML文档的另一个因素是,随着XML文档变大,取决于您访问内部元素的方式,内存使用量会增加。这尤其适用于DOM,但是在PHP5中,XMLReader的内存消耗非常低。

无论如何,总而言之,对于一个投资组合网站,为什么不使用XML(但理想情况下使用XMLReader - 或DOM,如果只是一个小的XML文档),但对于更大的一个,不幸的是,MySQL或类似的方法是可行的。