- ob_start: documentation ( source)
- register_shutdown_function: documentation ( source)
- session_set_save_handler: documentation ( source)
- session_start: documentation ( source)
<?php
// Testing shutdown sequence
function checkSqlite()
{
if (!$GLOBALS['pdo']) echo "PDO connection\n";
}
$pdo = new PDO('sqlite:');
function shutdown() {
checkSqlite();
echo "register_shutdown_function\n";
}
register_shutdown_function('shutdown');
class MyClass {
function __destruct() {
checkSqlite();
echo "Object destructor\n";
}
}
function obcallback($buffer) {
checkSqlite();
$buffer .= "Output buffer callback\n";
return $buffer;
}
ob_start('obcallback');
$myObject = new MyClass;
function dummy() { return true; }
function sessionclose() {
checkSqlite();
echo "Session close\n";
return true;
}
function sessionwrite() {
checkSqlite();
echo "Session write\n";
return true;
}
session_set_save_handler('dummy','sessionclose','dummy','sessionwrite','dummy','dummy');
session_start();
?>