Smarty中的ob_start问题
Linux Redhat AS4, Apache 1.3.37, PHP 4.4.6, Smarty 2.6.3 环境中,只要在调用 Smarty 的 display() 函数之前有任何诸如
echo/print/print_r 等输出,那么整个输出结果就变成空白页面。一开始以为是版本升级导致的问题,遂换成旧版本,问题依旧。也怀疑到是否因为 SQUID 缓存引起的,于是直接走 Apache 端口,还是那样。把 PHP 的 error_reporting 改成 E_ALL,重启,没看到任何报错,但是问题依旧如此...这时已经有点烦躁了。 以前也从来没碰到过如此BT之问题,百思不得其解,干脆重启机器吧,可还是那样...
把保存cache的目录权限设置成777,把cache清除,禁用cache...能想得到的都做了,可是,结果还是那样...
没办法,那只好debug调试程序了吧,于是就跟踪 Smarty 的源代码中的 display() 函数,发现调用了 ob 系列函数,于是怀疑和它们有关>系,于是关闭 ob 功能,问题消失。
究其原因,原来是在 Smarty 中调用了 ob_start() 函数,并且附带了参数 'ob_gzhandler',代码段如下:
@ob_start('ob_gzhandler'); $this->fetch($resource_name, $cache_id, $compile_id, true); $content = @ob_get_contents(); if($content) {@ob_end_clean();@ob_start('ob_gzhandler');echo $content;@ob_end_flush(); }
选项却没有打开,也就是无法支持 output_handler 了。打开 php.ini 文件,修改如下内容:
output_handler = ob_gzhandler;
Smarty中的ob_start问题相关推荐
- smarty中的内建函数(二)if、section
接smarty中的内建函数(一) 7.if,elseif,else 主要根据条件来决定处理的方式 [php] view plaincopy print? $role = '1'; $smarty-&g ...
- Smarty中的变量
Smarty中变量分为三类 1.PHP分配的变量 index.php [php] view plaincopy print? require('./include.php'); //加载Smart ...
- Smarty 中的 if 语句条件修饰词
Smarty 中的 if 语句和 php 中的 if 语句一样灵活易用,并增加了几个特性以适宜模板引擎. if 必须于 /if 成对出现. 可以使用 else 和 elseif 子句. 可以使用以下条 ...
- smarty中如何统计数组的个数?
在做web前端中,很多人会遇到在smarty中如何统计数组的个数,其实很简单 比如数组$array 你只需要用{$array|@count}就可以获取. 转载于:https://www.cnblogs ...
- smarty中section的使用
在smarty的使用过程中,有很多时候需要将一个数组输出到模板中来处理,以下将演示如何将一个索引(index)数组和关联(assocaite)数组在页面中展现出来. 假设有如下一个索引数组: 1.索引 ...
- Smarty 显示大括号 | 在Smarty中计算数组元素的长度 | Smarty字符串拼接
参考链接:http://hi.baidu.com/bdusnb/item/289d160e6a9c92cd9157183d 参考链接:http://hi.baidu.com/mayimu789/ite ...
- smarty中js的调用方法
有时候,在smarty中,包含js的时候,整个页面就不会显示,而程序员往往在页面中找错误,程序页面,模板页面检查了多次都没有错误,就很郁闷了. 解决办法: 把模板页面中的js代码拷贝出来放在新建的js ...
- php smarty php函数,smarty中使用php函数的方法
本节内容: 如何在smarty中使用php函数? 例子: 复制代码 代码示例: /** * smarty模板引擎中使用php函数 * by www.jbxue.com */ require 'libs ...
- smarty手册-smarty中foreach循环语句详解
原文地址:smarty手册-smarty中foreach循环语句详解作者:谭博 {foreach}循环也有自身属性的变量,可以通过{$smarty.foreach.name.property}访问,其 ...
最新文章
- Windows 编程[5] - 学习窗体生成的过程五
- linux mcelog 运行,服务器硬件检测(采用mcelog)
- fast.ai 深度学习笔记:第一部分第二课
- vc 6.0添加c文件 fatal error C1010解决办法
- PHP Socket编程起步
- python读写word、excel、csv、json文件
- 如何使用预览在 Mac 上将 HEIC 文件更改为 JPEG
- css中的@media用法总结
- 汇率兑换Python
- 飞机机器人特摄片_机器人大战怪兽-好莱坞的特摄片「环太平洋」
- SD卡CF卡U盘硬盘等磁盘属性显示为0字节怎么恢复数据
- DayDayUp:2019.01.24新东方年会—俞敏洪点赞并奖励吐槽神曲《释放自我》12万元!—附全歌词(牛逼的人在哪里都不会彷徨)
- C语言字符数组的定义与初始化
- 百度地图js轨迹展示
- 手机app抓包,无视SSLPinning
- Bootstrap 中的 aria-label 和 aria-labelledby
- safari保存视频_如何使用Safari的“阅读列表”保存文章供以后使用
- c语言怎么判断常量合不合法_C语言z简单的入门
- 奇虎360完成股改增资 新股权结构曝光
- 浅谈财务人员的终身学习