什么是XHP?XHP[1]是一个PHP扩展,通过它,开发人员可以直接在PHP代码中内嵌XML文档片段,作为合法的PHP表达式。这样,PHP就成为一个更为严格的模板引擎,大大简化了实现可重用组件的工作。
简单举例<?php
$href = 'http://www.********.com';
echo <a href={$href}>wengdo</a>;
注意第三行代码中的语法,其中echo后的不是字符串。这是新的语法,主要是将XHP解释到PHP。
在{}里的任何内容都是完整的PHP表达式,在这里的{}不同于双引号字符串;双引号字符串仅能包含变量。你可以定义能在PHP中实例化的任意元素,在每个元素包含下,你可以创建一个类的实体。定义了一个新的元素,就等于定义了一个新的类。XHP会设置一组带有大部分HTML的预定义元素。
注意:一定要包含init.php[4]这个文件,这个文件在代码库里的php-lib[5]目录里。这个XHP扩展只增加了XML语法的处理,目前的元素都是在PHP里定义好了的。包含了XHP核心库在PHP的代码里,那就意味着你可以在你的应用里使用XHP,但是它提示你由于XHP的升级引起的不兼容导致你的错误。
复合结构注意XHP结构可能是一个专门的复合结构。这是一个正确的XHP程序:
<?php
$post =
<div class="post">
<h2>{$post}</h2>
<p><span>Hi,Wengdo.</span></p>
<a href={$like_link}>******.com</a>
XHP有一个优势就是字符串解释没有结束,它在编译的时候会强制要求纠正标记的错误结构。也就是说,这个表达式 $foo = <h1>Header</h2>; 是一个不正确的表达式,因为你没有关闭<h1>标签而是用的</h2>.当在设计一大块的标记的时候,这时候就比较难完全的发现和纠正这个错误。用XHP编译的时候会先检查你的代码,并且会拒绝执行,直到你纠正错误为止.