维护php对象状态

时间:2016-09-29 15:22:03

标签: php object

我的PHP代码创建了一个“School”对象,该对象是(在其他函数中)能够返回多个表单,这些表单在提交时由php处理。 通过这些表单中的一个,我可以将“SchoolClass”对象添加到“School”对象中的数组,但似乎在添加“SchoolClass”对象后,在某些时刻重新创建了“School”对象。这种重新创造使“SchoolClass”数组消失。

返回表单的函数是静态的,但将“SchoolClass”对象添加到数组中的函数不是静态的; (“School :: ShowStudentForm()和School-> RegisterSchoolClass($ class)”)

类提法和提交后处理表单的php脚本都在同一个文件中(index.php)。我有这样的想法,即将类代码和表单处理代码保存在同一个文件中可以解决问题,但它没有做出改变。

问题1:只要我需要,我如何维护“学校”对象? 问题2:可以创建一个只有静态方法的类,并将数据直接写入文件或数据库以避免整个问题,或者只是跳过整个对象方法并只使用“普通”函数吗?

是的,这个问题可能以前遇到过,因此也回答过,但我找不到我理解的答案。

1 个答案:

答案 0 :(得分:0)

好的......我想通了。 我可以使用$ _SESSION变量来存储它。

现在我在页面开头就是这样的:

$school = null;
if(!isset($_SESSION["school"]))
{ 
$school = new School; 
$_SESSION["school"] = $school;
echo "New school <br>";   
} else {
$school = $_SESSION["school"];
}