作者:lingling2502852417 | 来源:互联网 | 2014-05-05 09:01
XML是作为数据交换尺度而呈现的。Java和.NET都内在支撑XML,但是其它平台上的开发者也不用担心自己被这项技巧所抛弃了。PHP就是一个颇受欢迎的支撑XML的脚本环境。在本文中,我将向
XML是作为数据交换尺度而呈现的。Java和.NET都内在支撑XML,但是其它平台上的开发者也不用担心自己被这项技巧所抛弃了。PHP就是一个颇受欢迎的支撑XML的脚本环境。
在本文中,我将向你先容利用诸如PHP和MySQL这样的开放源码工具来处理XML的过程。我将以履行一个MySQL查询并把从查询所得到数据格局化为XML为例来加以阐明。最后,在开端埋头编写代码之前,我将先容如何把XML写进文件并检测系统设置。
为了可以运行本文所给出的代码,你需要能过运行PHP和MySQL,而且为了充分利用这些例子,你还需要知道主机名、用户名和口令。例子中的MySQL数据库的格局如图A所示。让我们看看如何用PHP来连接该数据库。
用PHP建立数据库连接
下面的PHP脚本建立到数据库的连接并履行一个查询:
以下为引用的内容:
$db_name = "xrandomusa_4";
$cOnnection= mysql_connect("MySQL.somewhere.com", "username", "password") or die("Could not connect.");
$table_name = 'pages';
查询MySQL
在MySQL连接建立之后,你必需用该连接来建立当前数据库。下面的代码就是用来完成这个任务的:
$db = mysql_select_db($dbName, $link);
现在,用一个SQL语句来选择$table_name中的所有行:
$query = "select * from " . $table_name;
如有必要,你可以随后添加属性。现在,如下履行查询:
$result = mysql_query($query, $connection) or die("Could not complete database query");
$num = mysql_num_rows($result);
你可以通过PHP.net网站来获得关于所有MySQL函数的参考材料。
建立并编写XML
现在,你应当已经做好了建立新XML文档的准备了。这有很多种方法,不过我认为清单A中所用到的方法可以满足尽大多数目标。
现在我们具体先容这一过程。变量num表现你查询的数据行呈现与否,它对MySQL的mysql_num_rows函数是可测的。变量$file包含了一个指针,该指针指向PHP在文件系统中成功的搜索到results.xml时所产生文件对象。假如找到result.xml,则创立你的PHP文件对象以及指定文件,且其属性是可写的。现在你可以把一个变量的内容打印到创立后的文件(由于你的目录已经设置为答应PHP写文件,所以这么做是没有标题的)。
留心,从安全的角度来考虑,在实际的利用程序开发中这么做实在是很笨拙的。为了确保你能够安全的实现本文所涉及的概念,你应当为你所盼看打开并写进的文件供给完整路径,并确保该文件位于你的Web根目录之下。
然后,PHP的mysql_fetch_array函数把查询变量$result转换成一个数组,并按其要害字进行循环。假如pgaeTitle在查询所返回的栏之中,对每一行返回值都向字符串变量$_xml写进某些文本。
留心运算符“.=”(它用来把XML格局的字符串当作数值来拼接)读取$row。当循环结束的时候,根XML节点打印到变量$_xml之中,所有的变量用PHP的fwrite函数写进file.xml文件之中。
现在,屏幕上显示出一个链接。确保这条链接指向你的XML文件的路径,否则你无法看到这个格局化XML(该文件用PHP处理MySQL查询而产生)。