我有一个 PHP 脚本,可以通过 Dojo Ajax xhrGet 调用以两种方式进行调用。
第一次使用“init”参数调用它,这会导致脚本创建 StateList 类的实例并读入状态名称文件。
session_start();
@include('StateList.php');
require_once('phplog.php');
//start executing here
$comd=$_GET['nexturl'];
if($comd=="init") {
$st = new StateList("../data/statestxt.txt");
$_SESSION['statefile'] = $st;
}
第二次以及更多次,另一个 xhrGet 调用传递“getstate”参数,并且以下代码尝试从 SESSION 数组获取 StateList 类的实例。
if($comd =="getstate") {
$st= $_SESSION['statefile'];
phplog("size=".$st->getSize());
}
但是, getSize() 方法永远不会执行,也无法调用任何其他方法
在重构的 StateList 类实例上。
请注意,这是一个 PHP 脚本,它在顶部包含类定义
因此类方法应该是已知的并且可用的。
我在这里缺少什么?
您需要在调用之前包含类定义session_start()
,否则该对象将无法正确反序列化,并且将成为__PHP_Incomplete_Class
。否则你所拥有的应该可以正常工作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)