<!--PHP编程实战-->
<!--XML -->
<!--14-3-->
<!--第一个示例:animals.php-->
<?php
error_reporting(E_ALL ^ E_NOTICE);
$xml = <<<THE_XML
<animal>
<type>dog</type>
<name>snoopy</name>
</animal>
THE_XML;
$xml_object = simplexml_load_string($xml);
foreach ($xml_object as $element => $value) {
print $element . ": " . $value . "<br/>";
}
?>
<!--PHP编程实战-->
<!--XML -->
<!--14-4-->
<!--更复杂的:animals.php-->
<?php
error_reporting(E_ALL ^ E_NOTICE);
$xml = <<<THE_XML
<animals>
<dog>
<name>snoopy</name>
<color>brown</color>
<breed>beagle cross</breed>
</dog>
<cat>
<name>teddy</name>
<color>brown</color>
<breed>tabby</breed>
</cat>
<dog>
<name>jade</name>
<color>black</color>
<breed>lab cross</breed>
</dog>
</animals>
THE_XML;
$xml_object = simplexml_load_string($xml);
//输出所有狗的名字
foreach ($xml_object->dog as $dog) {
print $dog->name . "<br/>";
}
?>
xml标签,写错很难检查出来,尤其是用heredoc
专题
heredoc技术
Heredoc技术,是一种Perl风格的字符串输出技术。但是现在的一些论坛程序,和部分文章系统,使用heredoc技术,来部分的实现了界面与代码的准分离,phpwind模板就是一个典型的例子。
1.以<<<End开始标记开始,以End结束标记结束,结束标记必须顶头写,不能有缩进和空格,且在结束标记末尾要有分号 。开始标记和开始标记相同,比如常用大写的EOT、EOD、EOF来表示,但是不只限于那几个,只要保证开始标记和结束标记不在正文中出现即可。
2.位于开始标记和结束标记之间的变量可以被正常解析,但是函数则不可以。在heredoc中,变量不需要用连接符.或,来拼接,如下:
nowdoc(PHP5.3+)
Nowdoc 结构是类似于单引号字符串的。nowdoc 中不进行解析操作。这种结构很适合用于嵌入 PHP 代码或其它大段文本而无需对其中的特殊字符进行转义。与 SGML 的 结构是用来声明大段的不用解析的文本类似,nowdoc 结构也有相同的特征。
一个 nowdoc 结构也用和 heredocs 结构一样的标记 <<<, 但是跟在后面的标识符要用单引号括起来,即 <<<'EOT'。
网友评论