wp_ob_end_flush_all()
云策文档标注
概述
wp_ob_end_flush_all() 是一个 WordPress 核心函数,用于在 PHP 5.2 环境下刷新所有输出缓冲区,确保在单例销毁前完成输出。
关键要点
- 函数 wp_ob_end_flush_all() 专门处理 PHP 5.2 的输出缓冲区刷新。
- 通过循环调用 ob_end_flush() 来清空所有缓冲区级别。
- 主要用于确保输出在单例销毁前被正确刷新,避免数据丢失。
- 自 WordPress 2.2.0 版本引入,是核心功能的一部分。
代码示例
function wp_ob_end_flush_all() {
$levels = ob_get_level();
for ( $i = 0; $i < $levels; $i++ ) {
ob_end_flush();
}
}注意事项
- 此函数主要针对 PHP 5.2 设计,现代 PHP 版本可能不需要此特定处理。
- 在单例销毁前调用,以确保所有缓冲输出被发送到客户端。
- 相关函数包括 Bulk_Upgrader_Skin::flush_output()、show_message() 和 spawn_cron(),它们在不同上下文中使用输出缓冲区。
原文内容
Flushes all output buffers for PHP 5.2.
Description
Make sure all output buffers are flushed before our singletons are destroyed.
Source
function wp_ob_end_flush_all() {
$levels = ob_get_level();
for ( $i = 0; $i < $levels; $i++ ) {
ob_end_flush();
}
}
Changelog
| Version | Description |
|---|---|
| 2.2.0 | Introduced. |