ob_get_level

(PHP 4 >= 4.2.0, PHP 5)

ob_get_level — Return the nesting level of the output buffering mechanism

Описание

int ob_get_level ( void )

Returns the nesting level of the output buffering mechanism.

Возвращаемые значения

Returns the level of nested output buffering handlers or zero if output buffering is not active.

Смотрите также

Коментарии

Even under older PHP, you can decide if output buffering is active (i.e. ob_get_level() > 0) using

   <?php $ob_active ob_get_length () !== FALSE ?>

Paolo
2004-07-07 12:03:58
http://php5.kiev.ua/manual/ru/function.ob-get-level.html
Автор:
For users confused about getting "1" as a return value from ob_get_level at the beginning of a script: this likely means the PHP ini directive "output_buffering" is not set to off / 0. PHP automatically starts output buffering for all your scripts if this directive is not off (which acts as if you called ob_start on the first line of your script).

If your scripts may end up on any server and you don't want end-users to have to configure their INI, you can use the following at the start of your script to stop output buffering if it's already started:
<?php
if (ob_get_level()) ob_end_clean();
?>

Alternatively, you can use the opposite if you always want to have an output buffer at the start of your script:
<?php
if (!ob_get_level()) ob_start();
?>
2012-06-12 02:04:07
http://php5.kiev.ua/manual/ru/function.ob-get-level.html
Автор:
This can be used to handle exceptions properly when using output buffering for rendering a view which may or may not be using output buffering

<?php

function getView($view)
{
   
$level ob_get_level();
 
   
ob_start();
 
    try
    {
        include 
$view;
    }

    catch (
Exception $e)
    {
        while (
ob_get_level() > $level)
        {
           
ob_end_clean();
        }

        throw 
$e;
    }

    return 
ob_get_clean();
}
2015-05-21 21:34:27
http://php5.kiev.ua/manual/ru/function.ob-get-level.html

    Поддержать сайт на родительском проекте КГБ