我在php 5.3.28上面临一个非常奇怪的问题
我有这段代码:
ob_start( );
session_start( );
include( "../common.php" );
check_user_login( );
$Pageination->Pagination( );
$p = $Pageination;
我在我的所有网站上使用此代码进行分页,但我不知道为什么有一段时间我会收到此错误
PHP致命错误:在
中调用未定义的函数Pagination()
有时这段代码工作得很好没有错误!
[更新1]
来自我的main / main.php的代码
ob_start( );
session_start( );
include( "../common.php" );
check_user_login( );
$Var_120->Pagination( );
$p = $Var_120;
$page = setpage( );
$Var_336->AdminLoginlist( );
$al = $Var_336;
及其工作
我的main / edit-faq.php
中没有此代码ob_start( );
session_start( );
include( "../common.php" );
check_user_login( );
$Var_312->Pagination( );
$p = $Var_312;
$page = setpage( );
$Var_528->viewcategory( );
没有工作,错误就在
致命错误:在非对象上调用成员函数Pagination() 在/home/zmiintco/public_html/z/main/edit-faq.php第91行
这是我的common.php代码
include( "lib/connect.php" );
include( "lib/function.php" );
include( "lib/pagination.php" );
include( "lib/validation.php" );
include( "lib/simpleimage.php" );
include( "language/".get_page_settings( "11" ).".php" );
答案 0 :(得分:0)
您可能将错误报告设置为不显示警告。因此,您不会发现您的include()
语句失败。因此,您的Paginator类不可用于您的脚本,并在您尝试实例化时导致致命错误。
有关如何正确设置错误报告的详细信息,请参阅How to get useful error messages in PHP?。
这很可能是因为当脚本不是包含它的目录下的一个目录时,您使用该文件的相对路径是不正确的。将include的路径更改为解决此问题的绝对路径。
例如:
include( "/full/path/to/includes/common.php" );
答案 1 :(得分:0)
首先,在脚本顶部设置错误报告:
error_reporting(E_ALL);
ini_set('display_errors', 1);
现在您很可能会收到错误(,如您所述):
PHP致命错误:在
中调用未定义的函数Pagination()
那是因为你的变量$Pageination
没有被实例化。
只需实例化它,然后调用其成员函数。
ob_start( );
session_start( );
include( "../common.php" );
check_user_login( );
$Pageination = new Pagination();
$Pageination->Pagination( );
$p = $Pageination;
请注意,这是一个位于common.php
包含内的某个类
您是否可以在common.php
中显示代码?