栏目导航
热点推荐
- 利用单元测试对PHP代码进行检查
- 优化PHP代码的40条建议
- 十条PHP技巧来提升你的编程水平
- PHP的GD库函数大全
- IIS6.0平台下PHP最佳配置方法
- 实用的PHP编程技巧
- php中防盗链使用.htaccess
- 在PHP中全面阻止SQL注入式攻击之
- PHP生成HTML的技术原理
- 新手学堂:PHP服务器变量设置的
- 解决php存取mysql 4.1乱码问题
- PHP 开发中的中文编码问题
阅览排行
PHP输出控制功能在简繁体转换中的应用
www.jz123.cn 2009-02-18 来源: 中国建站 责任编辑(乐乐) 我要投递新闻
概要:本文对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中执行系统外部命令 下一篇:PHP4之COOKIE支持详解