我有一个班级......
class myclass {}
$myclass = new myclass();
$myclass->frigin = 'awesome';
稍后在不同的 PHP文件中,我有一些包含...
include('hippie_deflectors.php');
但是,包含的PHP根本看不到$myclass
。
让PHP服从的最简单方法是什么?
这个档案......
.com/[module]/requested_page.php
...有两个包含过滤下面的从上到下......
包含第1组
.com/system/header.php
.com/system/header_classes.php
[$myclass
在这里定义]
包含第2组
.com/[module]/index_get.php
.com/system/template_1.php
.com/system/includes_js.php
.com/system/scripts/onload.js
[$myclass
未定义此处]
答案 0 :(得分:0)
你的问题有点难以理解。但这会奏效:
文件:File1.php
class myclass {}
$myclass->frigin = 'awesome';
include('hippie_deflectors.php');
档案:hippie_deflectors.php
include('different_file.php');
文件:different_file.php
var_dump($myclass);
将打印:
object(stdClass)#1 (1) { ["frigin"]=> string(7) "awesome" }
这是您的设置吗?
答案 1 :(得分:0)
我意识到我的错误,希望其他人可以从中学习。虽然我有范围问题(包含另一个的PHP文件然后只能通过将它作为参数传递给函数来访问类)我最终意识到JavaScript文件是作为字符串输出的,而不是作为一个包括!这意味着JavaScript文件会使浏览器发出第二个请求,其中只有PHP会解析该文件。
...视觉
这不解决单独但相关的问题,其中类只能在X数量的包含中访问,然后才能将它们作为参数传递给函数。