【发布时间】:2011-06-23 23:33:56
【问题描述】:
我之前写了一个问题,试图在 Kohana 中使用控制器,但我放弃并重写了文件。所以现在,我在 Kohana 控制器中有这个 php 脚本。控制器正在呈现的视图“需要”一个 php 文件,以便我可以执行一些第三方功能。我遇到了一个重大问题并开始调试。问题似乎是包含文件内的函数无法从同一个文件中访问函数外的变量。看来 Kohana 正在以某种方式清除全局变量???
示例:
//controller.php
require_once("ccfunctions.php");
//ccfunctions.php
$test = 'something';
function test(){
global $test;
echo $test;
}
test();
//This does not produce anything
对这个有什么想法吗?
编辑: 实际上,即使从我正在呈现的视图文件中,上面的示例也不起作用。忘记包含的文件。我意识到 Kohana 试图强制执行 MVC 模型,但这很荒谬。为什么我不能在视图文件中创建函数并调用全局变量?
【问题讨论】:
-
你可以...一定有其他问题。您所描述的正是帮助文件所做的,所以为什么它对您不起作用可能是由与 Kohana 无关的问题引起的,但我可能是错的。有兴趣知道问题是什么。您是否尝试在
test函数中回显字符串文字以查看函数本身是否被调用? -
@Endophage:字符串文字在函数内显示良好。奇怪。在这里扯我的头发;)我以前没有使用过Kohana,这是一个收购项目。到目前为止一切都很好,但这真的很困扰我。
-
您的问题与 kohana 无关,而与对变量可见性范围的理解有关。
-
@Endophage。是的,我不明白这是如何处理的。
标签: php kohana global-variables