PHP输出缓冲区获取白屏并且方法返回时没有错误
发布时间:2020-12-13 22:53:58 所属栏目:PHP教程 来源:网络整理
导读:我一直在使用 PHP很长一段时间,由于某种原因,迁移到新服务器导致白屏死机.显然它必须是因为版本差异.我多年来一直使用相同的输出缓冲模式. 通常… ob_start();? //HTML...?php$output = ob_get_clean();ob_flush();return $output; 最近我发现了我的普通/更
我一直在使用
PHP很长一段时间,由于某种原因,迁移到新服务器导致白屏死机.显然它必须是因为版本差异.我多年来一直使用相同的输出缓冲模式.
通常… ob_start(); ?> //HTML... <?php $output = ob_get_clean(); ob_flush(); return $output; 最近我发现了我的普通/更新版本的PHP中的一些问题(我认为在我的WAMP上5.4),同时返回HTML部分并在视图之间传递它们(我使用MVC).它们完全显示在屏幕上,根本没有保存在缓冲区中.我发现我在ob_start()中需要一个必要的标志,让它知道可以删除缓冲区. 像ob_start一样(null,PHP_OUTPUT_HANDLER_REMOVABLE); 但是现在我的页面已经存在而不是在WAMP上,整个页面现在断开并显示完整的白色屏幕.我打开了所有错误报告但仍然没有.没有任何东西出现在日志等等所以我做了一大堆回声“测试”;死;看看它破坏了哪一行,当我删除在视图之间传递完成的HTML块的缓冲部分时,一切都很好. 我需要弄清楚如何正确地返回我的部分. 解决方法
在这种情况下你不需要ob_flush()因为ob_get_clean()已经关闭了输出缓冲区.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |