任何使用PHP与XML进行网站编程(3)_PHP教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:解析PHP中的MVC框架编程
什么是MVC MVC是一个可以让你把三个部分(即MVC的全称,Model、 View、Controller)谐调地组成一个复杂应用程序的概念。一辆汽车就是一个在现实生活中非常好的MVC例子。我们看车都看两个View(显 示)部分:内部和外部。而这两个都离不开一个Controller(控

若 parser 有错则返回 false 值,否则就返回错误代码 (如 XML_ERROR_BINARY_ENTITY_REF .... 等等)。

6. xml_error_string

string xml_error_string(int code);

本函数可取得 XML 在处理时的错误代码。参数 code 为解析错误代码。若无错误返回值为代码的文字描述字符串。

7. xml_get_current_line_number

int xml_get_current_line_number(int parser);

本函数用来取得目前 XML 解析所正在处理的行号。参数 parser 为解析代码。若 parser 有错则返回 false 值,若无错误则返回行号数字。

8. xml_parser_free

boolean xml_parser_free(int parser);

本函数用来释放目前 XML 解析所使用的内存。参数 parser 为解析代码。若没有错误则返回 true 值,否则返回 false 值。

四、案例解析

以下是用PHP5实现读取一个以XML 1.0格式编写的通讯录address.xml,并显示其内容的示例。详解见有关注释。

以下为引用的内容:

<?

//

//第一部分:几个PHP Helper函数

//



function read_file($filename)

{

//读取文件

$lines=file($filename);

//变量$contents是存放文件内容的变量

$contents="";

while(list($key,$value)=each($lines))

{

$contents.=$value;

}

return $contents;

}







function start_element($parser, $name, $attrs)

{

//变量$depth存放标记的深度

global $depth;

//变量$spacer存放标记前所有的箭头符号

$spacer="";

for ($i=1;$i<$depth[$parser];$i  )

{

$spacer.="->";

}

//设置标记显示时的颜色

if($depth[$parser]==0)

{

$font_color="red";

}

else

if($depth[$parser]==1)

{

$font_color="green";

}

else

{

$font_color="blue";

}

//设置标记显示时的字体

$font_size=5-$depth[$parser];

if ($font_size<2)

{

$font_size=2;

}

//显示标记

echo "<font size=".$font_size." color=".$font_color.">";

echo $spacer.$depth[$parser];

if ($depth[$parser]<>0)

{

echo "、";

}

echo $name."<BR>";

echo "</font>";

$depth[$parser]  ;

//如果是主标记就显示红色的水平线

if($depth[$parser]==2)

{

echo "<hr color=red size=1>";

}

}



/*********************************

*当PHP遇到一个XML的结束标记时 *

*调用,其作用是改变当前的层次 *

*计数,并在主标记下显示水平线 *

分享:浅谈开发PHP网站要掌握的技巧
1.使用 ip2long() 和 long2ip() 函数来把 IP 地址转化成整型存储到数据库里。这种方法把存储空间降到了接近四分之一(char(15) 的 15 个字节对整形的 4 个字节),计算一个特定的地址是不是在一个区段内页更简单了,而且加快了搜索和排序的速度(虽然有时仅

共3页上一页123下一页
来源:模板无忧//所属分类:PHP教程/更新时间:2009-05-18
相关PHP教程