用于MySQL的PHP XML类是怎么样的

用于MySQLPHP XML类是怎么样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法

通过自己创建一个处理连接MysqL和使用PHP中的DomXML功能来提供XML输出的类。这样就可以可以在PHP脚本的任何地方声明这个类并且在需要使用它的时候可以提供XML功能

假设人们使用PHP是原因是他的标价:免费。MysqL为需要向系统中增加数据库功能的开发人员提供一个免费的数据库解决方案。这些解决方案的缺点是在设置和管理的时候有些复杂。

在这文章中使用的PHP版本是PHP 4.3.4 for Win32,可以从The PHP Group。MysqL的版本是MysqL 4.0.16 for Win32,可以从MysqL.com得到。MysqL的安装很容易——只要简单地按照其指令来就可以了。PHP稍微有一点复杂。

PHP的下载页面有两个文件一个ZIP文件一个安装文件。因为我们需要添加ZIP文件中的扩展,所以这两个文件都要下载。下面是下载之后的所要做一个简单步骤:

1. 使用安装文件安装PHP;

2. 解压iconv.dll,将其放到Windows的系统文件夹中;

3. PHP安装目录下创建一个目录(认为C:PHP)“extensions”;

4. 解压PHP_DomXML.dll文件到这个目录;

5. 在Windows文件夹下找到PHP.ini文件,然后使用记事本或其它文本编辑器打开。在这文件中找到“extensions_dir=”,然后将其值修改为第3步设置的扩展文件夹的完整路径;

6. 找到“;extension=PHP_DomXML.dll”,删除本行开头的分号;

7. 重新启动Web服务器

然后在你的Web目录下使用下面的代码创建一个PHP页面“test.PHP”。(这段代码在运行IIS 5.0的Windows 2000 SP3能够正常运行。)

以下为引用的内容
      run_sql_return_xml("SELECT * FROM users");
     
  classCMysqLXML {

  var $host;

  var $user;

  var $password;

  var $db;

  functionCMysqLXML($host, $user, $password, $db) {

  $this->host = $host;

  $this->user = $user;

  $this->password = $password;

  $this->db = $db;

  }

  functionrun_sql_return_xml($sql_string) {

  $connection = MysqL_connect($this->host, $this->user, $this->password,

  $this->db);

  MysqL_select_db($this->db);

  $result = MysqL_query($sql_string);

  $doc = DomXML_open_mem("");

  while ($row = MysqL_fetch_array($result, MysqL_ASSOC)) {

  $num_fields = MysqL_num_fields($result);

  $row_element = $doc->create_element(MysqL_field_table($result, 0));

  $doc_root = $doc->document_element();

  $row_element = $doc_root->append_child($row_element);

  for ($i = 0; $i < $num_fields; $i++) {

  $field_name = MysqL_field_name($result, $i);

  $col_element = $doc->create_element($field_name);

  $col_element = $row_element->append_child($col_element);

  $text_node = $doc->create_text_node($row[$field_name]);

  $col_element->append_child($text_node);

  }

  }

  MysqL_free_result($result);

  MysqL_close($connection);

  return $doc->dump_mem(false);

  }

  }
 


这个例子要求你在MysqL上有一个“test”,其中有一个表“users”。而且,你还需要为访问测试数据库上的数据创建一个用户。创建数据库、表等的步骤可以查看MysqL的文档。

如果你分析一下代码,你就会明白我创建了一个叫做CMysqLXML的类。CMysqLXML构造函数接受四个参数:MysqL的主机名,一个合法的用户名一个密码和一个数据库名字。构造函数使用这四个参数设置类的host、user、password和db成员变量。

该类提供的唯一的一个方法是run_sql_return_xml()。它接受一个SQL查询字符串参数。当这个方法执行的时候,它创建一个MysqL数据库的连接并选择数据库查询字符串被执行,结果存储到变量$result中。使用DomXML_open_mem()函数创建一个新的DOMDocument对象。然后,代码开始循环结果集中的所有记录。对于每一条记录,添加一个与结果集的表同名的行元素到DOMDocument文档元素中。然后为每个字段添加一个元素到行元素中,元素名为字段名。最后,一个文本节点被添加到每个字段节点,节点的值为该字段的值。

在循环所有行之后,代码释放结果集并关闭连接。产生的DOMDocument XML从函数中返回。

PHP页面的开始处你会看到CMysqLXML对象被实例化,run_sql_return_xml()方法调用。这个方法的返回值被返回给客户。DomXML功能除了PHP函数命名约定之外都遵守DOM规范。

如果需要更多有关DOM规范的信息,可以访问W3C的站点。而更多DomXML的信息则可以从The PHP Group找到,在这里你可以下载不同格式的文档。

关于用于MysqLPHP XML类是怎么样的问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程之家行业资讯频道了解更多相关知识。

相关文章

这篇文章主要介绍“hive和mysql的区别是什么”,在日常操作中...
这篇“MySQL数据库如何改名”文章的知识点大部分人都不太理解...
这篇文章主要介绍“mysql版本查询命令是什么”的相关知识,小...
本篇内容介绍了“mysql怎么修改字段的内容”的有关知识,在实...
这篇文章主要讲解了“mysql怎么删除unique约束”,文中的讲解...
今天小编给大家分享一下mysql怎么查询不为空的字段的相关知识...