PHP 输出控制
一、前言
说到PHP输出控制, 在很多框架里面,比如说TP,Yii和Laraval的模版引擎里面都有输出控制函数的阴影,输出控制也叫输出缓冲,说到它的作用有以下几点。
二、内容
1、 输出模版
1 $var = ['a' => 1, 'b' => 6];
2 $initLevel = @ob_get_level();
3 @ob_start(); //激活输出缓冲
4 @ob_implicit_flush(false); //关闭自动冲刷
5 try{
6 require '../index.php'; //模版文件
7 extract($var, EXTR_OVERWRITE); //把当变量$var导入index.php文件中 即: $a = 1, $b = 6;
8 return @ob_get_clean();
9 }catch (\Exception $e){
10 //try...throw...catch 代码块
11 if(@ob_get_level() > $initLevel){
12 if(!@ob_end_clean()){
13 @ob_clean();
14 }
15 }
16 throw $e;
17 }
2、实时输出
1 @ob_start();
2 $a = '输出控制';
3 echo $a;
4 @ob_end_flush();
3、捕获没有返回值的函数,比如: var_dump(),phpinfo(),echo,print_r();
@ob_start();
phpinfo();
$a = @ob_get_contents();
echo $a;
@ob_end_flush();
三、总结
总结: php输出缓冲控制主要就这三点,其中1是用的最多的,而2和3不常用.
请支持原创!转载时,请注明来源;
链接地址:https://www.cnblogs.com/cleverstone