我是PHP Phalcon的新手,我正在創建一個簡單的REST API後端,現在我遇到了一個問題。如何爲Phalcon Micro框架添加全局可訪問變量?
//define $app in index.php
$app = new Micro($di) ;
在一個控制器中,我試圖至少在控制器之間定義(添加)全局可訪問變量。
//However, the followings are all not working.
$this->currentWeixinAccessToken = $access_token ;
$this->getDI()->setShared('currentWeixinAccessToken', $access_token);
$this->$currentWeixinAccessToken = $access_token;
$this->di->setShared('currentWeixinAccessToken', $access_token) ;
他們能夠無差錯地定義,但是當我使用他們的另一個控制器,
$access_token = $this->currentWeixinAccessToken;
的錯誤是,
[Sat Jul 30 22:10:20 2016] PHP Notice: Access to undefined property currentWeixinAccessToken in /home/tom/src/phalcontest/app/controllers/PostsController.php on line 48
而且我發現一些答案在這裏,但他們不適合我。 Cross controller variables in Phalcon
如果控制器B擴展控制器A,這應該工作。但是按照你描述的方式,這是不可能的。我猜你正在尋找類似Sessions的行爲,但不完全;) 如果該變量被添加到$ di,您將能夠訪問它。 –
是的,它會喜歡會話行爲,但是這個變量在所有會話中都是相同的/ –
其他控制器(後控制器)是否從相同請求訪問它?或者它是在另一頁 –