doubing3662 2012-11-26 11:07
浏览 22
已采纳

如何将某些内容添加到PHP输出缓冲区的开头?

How do you append something to the beginning of the output buffer?

For example, say you have the following code:

ob_start();

echo '<p>Start of page.</p>';
echo '<p>Middle of page.</p>';
echo '<p>End of page</p>';

Before flushing the contents to the browser, how can I append something so that it appears before <p>Start of page.</p> when the page loads?

It sounds simple enough, like moving the pointer to the beginning of an array, but I couldn't find how to do it with the output buffer.

  • 写回答

5条回答 默认 最新

  • dongzouxigu12345 2012-11-26 11:14
    关注

    ** PHP 5.3 **

    ob_start(function($output) {
        $output = '<p>Prepended</p>'.$output;
        return $output;
    });
    
    echo '<p>Start of page.</p>';
    echo '<p>Middle of page.</p>';
    echo '<p>End of page</p>';
    

    ** PHP < 5.3 **

    function prependOutput($output) {
        $output = '<p>Appended</p>'.$output;
        return $output;
    }
    
    ob_start('prependOutput');
    
    echo '<p>Start of page.</p>';
    echo '<p>Middle of page.</p>';
    echo '<p>End of page</p>';
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部