2

我无法在位于 webroot 的外部 .php 脚本中访问会话

以为我会在我的一个控制器中编写一个函数 getSession() 并尝试在 .php 文件中调用它。

所以分步骤:

  1. 我有file.php
  2. 在控制器中,我有一个函数 getSession()。
  3. 如何调用file.php中的controllers函数?

谢谢你。

编辑

同时我修复了我的错误,但仍然很好奇这是如何完成的,并希望其他堆栈用户找到一个好的答案,所以:

它完全是这样的:

在 UsersController 我有一个功能:

public function getSession() {
    return $_SESSION['Auth']['User']['user_id'];
}

我想说像这样打印(例如):位于 webroot/uploadify/test.php 中的文件 test.php 中的 print_r(Users.getSession)。

这个文件不是一个类,但如果需要,那么它应该是:)

@CaboOne:也许你的答案是正确的,我只是不确定在哪里调用(并输入)什么代码:)

4

1 回答 1

2

假设我在 webroot 文件夹中有以下 php 文件:

<?php

class TestingClass {

    function getName(){
        return "Test";
    }
}

?>

我会做以下事情:

// This would bring you to your /webroot folder
include $_SERVER['DOCUMENT_ROOT'].'/another_file.php'; 

// Initializing the class
$example = new TestingClass; 

// Call a function from the initialized class
$a_value = $example->getName(); 


// If you want to use $a_value in the view, you can then set
$this->set('a_value', $a_value);
于 2013-02-07T14:39:14.637 回答