PHP输出控制功能在简繁体转换中的应用_PHP教程

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

推荐:PHP4之COOKIE支持详解
PHP4之COOKIE支持详解 建立商业站点或者功能比较完善的个人站点,常常需要记录访问者的信息,在PHP中提供了两种方便的手段:session和cookie功能.为了永久的保持用户信息,则cookie是最便捷的手段.在这里我将为大家详细的讲解cookie的功能及使用方法. 一: 设

概要:本文对PHP的输出控制功能进行了简单介绍并对其在简繁体转化中的应用给出了具体思路和实例。

一 PHP 输出控制功能介绍

PHP作为当今流行的脚本语言之一,具有编写简便,执行速度快,扩充性好等优点。PHP的输出信息控制函数可以让你控制你的脚本输出的内容,可以用于许多不同的情况,特别是在你的脚本已经输出信息后需要发送文件头的情况以及需要对输出信息进行编辑处理的地方。输出控制函数不对使用 header() 或 setcookie() 发送的文件头信息产生影响,只对那些类似于 echo()、print() 和 PHP 代码的数据块有作用。

例 1. 控制输出

以下为引用的内容:

test.php

 

function test($str){

return str_replace("php2000","y10k",$str);

}

ob_start("test");

echo "hello php2000";

ob_end_flush();

?>

这个程序在没有输出信息控制的情况下应该输出为

hello php2000

但通过指定了输出控制函数后,输出变为

hello y10k

在上面的例子中,使用 echo() 的输出内容将会保存在输出缓冲区中,直到调用了 ob_end_flush()或者脚本运行终止, 然后输出信息由自定义的处理函数进行处理(替换里面的字符串)并返回结果。

相关函数说明:

ob_start([string output_callback])- 打开输出缓冲区

所有的输出信息不在直接发送到浏览器,而是保存在输出缓冲区里面,可选得回调函数用于处理输出结果信息。

ob_end_flush - 结束(发送)输出缓冲区的内容,关闭输出缓冲区

二 简繁体转换的实现

一般通过对照表的形式实现,相关的文章非常多,这里就不多讲了,只给出其实现代码

以下为引用的内容:

function gb2big5($str) {

global $_gb_big5_;

$leng = strlen($str)-1;

for($i = 0; $i<$leng; $i ){

$h = ord($str[$i]);

if($h>=160){

$l = ord($str[$i 1]);

$gb=($h==161 && $l==64)?" " : substr($_gb_big5_, ($h-160)*510 ($l-1)*2, 2);

$str[$i] = $gb[0];

$str[$i 1] = $gb[1];

$i ;

}

}

return $str;

}

?>

 

其中:

$gb_big5_ 保存着big5 的字库对照表

$str 为要转化的字符串

分享:PHP程序员不可忽略的几点精华
我发现很多的PHP程序员,尤其是学习还不是很久的,都不知道PHP的精华所在。Perl当年如何在商界出名?其强大的正则表达式。而PHP呢?他是一门从Unix下发展起来的语言,当然也就继承了Perl的很多特点,同时C的优点都有。快速、简洁、明了,尤其是C程序员,PHP是

共2页上一页12下一页
来源:模板无忧//所属分类:PHP教程/更新时间:2009-03-13
相关PHP教程