1

我在 1 周内遇到了这个问题,我需要解决这个问题。

如果我测试这段代码,它运行良好:

<?php

$t = 3;

function callme()
{
   global $t;
   echo "The value of t is " . ($t == null?"null":$t);
}

callme();

// output: The value of t is 3

?>

但是,如果我使用 ob_start() 我丢失了全局变量:

<?php

$t = 3;

function callme()
{
   global $t;
   echo "The value of t is " . ($t == null?"null":$t);
}

register_shutdown_function( "callback_on_exit" );

function callback_on_exit()
{
   $output = ob_get_contents();
   ob_end_clean();
   echo str_replace( "The", "My", $output );
}
ob_start();
callme();
exit;

    // output: My value of t is null

?>

我找到的解决方案是global $t在脚本的顶部添加“; ?

4

0 回答 0