Righty o
我是OOP的新手。
即时通信使用PHP v5+
我有我的index.php:
<?
include_once('class/includes.php');
$reg = new register;
$action = $_GET['action'];
$page = $_GET['page'];
include('header.php');
if($page):
include($page);
else:
include('home.php');
endif;
include('footer.php');
?>我设置了htaccess,这样每个页面的url就是foo.com/pagename
那很好。
在我的classes.php页面(foo.com/ classes )上,默认包含viewClasses.php //注意,课程指的是瑜伽课,而不是面向对象的课程
所以从本质上讲,我有两个级别的包含(包括classes.php的index.php,它包含viewClass.php)
这是我的viewClass.php
<?
global $reg;
$reg->viewClassList();
echo $reg->classList;
?>由于某些原因,它没有像index.php中定义的那样拾取$reg,因此给出了这个错误:
致命错误:在第3行对/home/pandazco/public_html/register/viewClass.php中的非对象调用成员函数viewClassList()
我希望这能很好地解释我的问题。
发布于 2012-08-21 21:06:12
问题似乎是您没有在viewClass.php中包含实例化,这意味着$reg什么都不是。这就是错误告诉你的。
然而,我永远不会使用全局变量,事实上,我非常确定有很多关于不使用它们的冗长讨论。相反,如果您需要在不同的php脚本之间传递数据,我将设置一个会话变量并从中读取数据。
另外,你为什么要使用$reg作为全局变量呢?您所要做的就是在index.php中实例化它,并尝试在viewClass.php中调用它。你到底想要达到什么目的?
https://stackoverflow.com/questions/12055413
复制相似问题