输出缓冲区处理函数的作用有点类似c的堆栈,临时放入一个存储空间中,对内容进行处理。
输出缓冲区函数有:
ob_start() - 打开输出控制缓冲
ob_get_length() - 返回输出缓冲区的长度
ob_get_level() - 返回输出缓冲区的嵌套级别
ob_get_status() - 返回输出缓冲区的状态(数组形式返回,默认返回最顶层,参数为true时返回所有)
ob_get_contents() - 返回输出缓冲区的内容
ob_get_clean() - 以字符串格式返回当前输出缓冲区并关闭输出缓冲
ob_end_clean() - 清空(擦除)缓冲区并关闭输出缓冲
ob_get_flush() - 以字符串返回输出缓冲区内容并关闭缓冲
ob_end_flush() - 冲刷出(送出)输出缓冲区内容缓冲
实例如下:
<?php
define('app_root', dirname(file));
$file = '/templates/html/error_config.html';
ob_start();
include(app_root.$file);
ob_end_flush();
//$contents = ob_get_contents(); 这样可以将输出保存,可以作进一步处理
//ob_end_clean();
//echo $contents;
?>
<?php echo"<?xml version=\"1.0\" encoding=\"utf-8\">"; ?>
<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta http-equiv="content-script-type" content="text/javascript" />
<meta http-equiv="content-style-type" content="text/css" />
<title>error</title>
</head>
<body onload="doredirect()">
<h1>error</h1>
<div style="position:absolute;top:150px;text-align:center;width:95%;">
<p style="margin:12pt;"><strong>config.php</strong> does not exist or is not readable by the webserver in the directory.</p>
<p style="margin:12pt;"><?php echo commonfunctions::$psi_version_string ?></p>
</div>
</body>
</html>
输出结果如下:
config.php does not exist or is not readable by the webserver in the phpsysinfo directory.
以上就是php:输出缓冲区处理函数用法总结的详细内容。