php ob_start()
时间: 2023-08-05 12:02:03 浏览: 103
`ob_start()`是PHP中的一个内置函数,用于开启输出缓存。它的作用是将所有后续的输出都保存在内部缓存中,直到缓存区被清空或者关闭为止。这个函数可以用来控制输出的方式,比如可以在输出前对内容进行修改、添加HTTP头信息等操作。
当调用`ob_start()`函数时,PHP会自动创建一个输出缓存区,并将所有后续的输出都保存在这个缓存区中。此时,页面的输出并不会立即发送给浏览器,而是先保存在内存中,等到程序执行完毕或者手动调用`ob_flush()`等函数将缓存区中的内容输出后才会发送给浏览器。
`ob_start()`函数还可以接受一个可选的参数,用来指定输出缓存的类型。常用的类型包括:
- `ob_gzhandler`:压缩输出,用于减小输出大小。
- `ob_iconv_handler`:转换输出编码,用于解决中文乱码问题。
- `ob_tidyhandler`:使用Tidy扩展清理HTML代码。
示例代码:
```
<?php
ob_start();
echo "Hello, world!";
$contents = ob_get_contents(); // 获取输出缓存内容
ob_end_clean(); // 清空输出缓存并关闭输出缓存
echo $contents; // 输出缓存内容
?>
```
阅读全文