使用PHP创建XForms 第 1 部分

时间:2010-01-08 08:24:17   来源:第二电脑网  作者:第二电脑网

  第二电脑网导读:些很好的特性使开发人员能够创建最强大的表单。既然如此,为何不在 PHP 中使用 XForms?PHP 开发人员通常输出的是 HTML,后者一般对表单的功能有所限制。但是,XForms 的问题在于,其文件类型是严格的 XHTML,这是一种更精确的 HTML 版本,因为 XML 格式严格,并且不允许出现错误,标记不匹配等情况。另外,XForms 有正规的语法,这让一...
  正文:

PHP XForms 库简介

XForms 是一种优秀的 Web 2.0 语言,它拥有一些很好的特性使开发人员能够创建最强大的表单。既然如此,为何不在 PHP 中使用 XForms?PHP 开发人员通常输出的是 HTML,后者一般对表单的功能有所限制。但是,XForms 的问题在于,其文件类型是严格的 XHTML,这是一种更精确的 HTML 版本,因为 XML 格式严格,并且不允许出现错误,标记不匹配等情况。另外,XForms 有正规的语法,这让一些只学过 PHP 语言的 PHP 开发人员在学习 XForms 时有些困难。

本系列文章展示了 XForms PHP 库的创建过程,PHP 开发人员可以访问这些库以创建 XForms 元素。这将有助于减少 XForms 的学习过程,并且也有助于经验丰富的 XForms 开发人员在其 Web 应用程序设计中使用 PHP。这也免去了需要连续地输出显式的 XHTML 代码的要求,相反,对 XForms 库执行一些简单的调用即可输出所需的 XHTML 代码。这样,最终可以减少得到的 XHTML 中出现错误的可能性,从而加快开发速度。

在本文中,您需要使用 PHP 5 和 firefox XForms 插件(请参阅参考资料一节中的下载链接)。本系列文章中的测试是使用 PHP5 在运行于 apache 2 上的 WAMP5 Server Version 1.7.1 上执行的。

现在开始创建库。







创建库

创建 PHP XForms 库时,您需要使用类,内存变量和本地变量都保存在类中,消除多余的变量以及代码中的混乱。首先,从类声明和局部变量定义开始,如清单 1 所示。


清单 1. 类声明和局部变量
<?phpclass xforms_lib{    var $namespace;    var $namespaceXforms;    var $namespaceEvents;...}?>

这里请注意类名,使用类时需要知道该名称。清单 1中所示的三个变量是您将用到的三个主要的名称空间:通用的 XHTML 名称空间、XForms 名称空间和 Events 名称空间。

请注意,构造函数(见清单 2)和所有的后续方法都在类声明中,如清单 1所示。

开始创建上述文件时,将其名称保存为xforms_lib.php,并将其放入 PHP 代码的一个子目录中;比如称为lib。

这些类变量(如清单 1所示)在类的构造函数中进行设置,如清单 2 所示。


清单 2.xforms_lib构造函数
function xforms_lib($ns, $nsxforms, $nsevents){        $this->namespace = $ns;        $this->namespaceXforms = $nsxforms;        $this->namespaceEvents = $nsevents;    }

上面的构造函数接收这些名称空间的值并将其保存在类中。这让您免于一直访问名称空间的要求,比如,您可以使用 PHP XForms 库编写多个 XHTML 文件。

接下来,您将编写htmlTag方法,此方法返回开放 HTML 标记的声明。此函数只为您输出 HTML 标记:<html xmlns="..." , ...>。如清单 3 所示。


清单 3. 打开 HTML 标记
function htmlTag($customNS='', $customNSnamespace=''){        $xml = '<html';        if($this->namespace != '')            $xml .= ' xmlns="'.$this->namespace.'"';        if($this->namespaceXforms != '')            $xml .= ' xmlns:xforms="'.$this->namespaceXforms.'"';        if($this->namespaceEvents != '')            $xml .= ' xmlns:ev="'.$this->namespaceEvents.'"';        if($this->customNS != '' && $this->customNSnamespace != '')            $xml .= ' xmlns:'.$this->customNS.                '="'.$this->customNSnamespace.'"';        $xml .= ' >';        return $xml;    }

来源:http://www.002pc.com/master/College/Programming/PHP/11602.html

 1/6    1 2 3 4 5 6 下一页 尾页
收藏到:

关于《使用PHP创建XForms 第 1 部分》文章的评论

共有 0 位网友发表了评论 此处只显示部分留言 点击查看完整评论页面

站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td