我有一个头部方法显示在页面顶部,它在一个类内,在我的header()方法内部我在这里运行此代码以启动一个新的Profiler对象...
//start new page timer object
$profiler = new Profiler;
$profiler->start();
Run Code Online (Sandbox Code Playgroud)
在编译了一堆其他文件之后,我将一个文件包含到页脚部分,在此文件中我运行此代码,
echo 'Page Generated in ' .$profiler->end(). ' of a second with ' .$_SESSION['querie_counter']. ' MySQL Queries';
Run Code Online (Sandbox Code Playgroud)
但是我现在在页脚文件中收到此错误消息,
注意:未定义的变量:第21行的C:\ webserver\htdocs\friendproject2\includes\footer.inc.php中的探查器
致命错误:在第21行的C:\ webserver\htdocs\friendproject2\includes\footer.inc.php中的非对象上调用成员函数end()
我怎样才能解决这个问题?
如果你在header方法中创建了$ profiler对象,那么它将无法在另一个方法中使用,除非它是全局$ profiler是一个全局变量或者它是一个单例.
要使其成为全局,请在header方法之外声明$ profiler,然后在header方法内部包含以下行:
global $profiler;
也可以在页脚方法中包含此行.其余的代码可以保持原样.它应该工作.