作者liaosankai (低温烘焙)
看板PHP
标题Re: [CakePHP] 请问 $session 怎麽产生的?
时间Fri Jul 11 21:46:13 2008
※ 引述《HuangJC (吹笛牧童)》之铭言:
: trace CakePHP 时,第一步就被它卡死了 ~^_^~
: $session->read
: 这时马上全域搜寻 $session 这个字串,想看它什麽时候被 new 出来
: 结果,完全找不到!!
: 不过我倒可以搜寻 $session->read 这个字串啦
: 只是觉得也未免太神了
: 另外,之前曾经请教过的 function mc
: 类似这样,一道指令的搜寻
: 现在发现也不准了 :P
: 因为函式有可能用 ref 传回,所以也可能是 function &mc
: 今天就是卡在这里找不出一道指令,被同事念一下'怎麽不先看 data sheet 咧'
: ...其实根本没 data sheet,是自定的指令 :P
: ;;
: 最後一个问题如果有解,就太棒了:
: php 既然可以从函式返回,那就有返回位址,或说堆叠的机制
: 请问有指令可以监看它吗?
: 毕竟有时都已经拦到了,但根本不知哪里 call 来的
: 哪个函式,哪个档
: Trace 得有点累...
: (两点了,加班中 *_*)
: 谢谢
这个问题我好像之前有遇过类似的...
有Po在
http://www.ezluk.org/Posts/chapter/20
不过排版乱掉了= =,我重新贴排版正常的如下
不知道跟你的问题原因是不是一样
liaosankai说:
########################
#website_controller.php
########################
<?php
class WebsiteController extends Controller {
var $uses = array();
var $controller = array("session");
function login(){
$this->Session->write("myVar",true);
}
}
?>
########################
#myctrl_controller.php
########################
class MyctrlController extends Controller {
var $uses = array();
var $controller = array("session");
function test(){
if($this->Session->check("myVar'")){
echo "myVar exist";
} else {
echo "myVar can't find";
} }
}
现先浏览(造访) /website/login 再先浏览(造访) /myctrl/test
结果输出 myVar can't find
之後我试着将两个Controller类别的该行注解
//var $controller = array("session");
重新先浏览(造访) /website/login 重新再浏览(造访) /myctrl/test
结果输出 myVar exist
心得:
1.似乎两个Controller各自使用自己的session component
2.重新定义Controller预设(默许)的component可能会产生执行上错误
以上....文不对题
--
我的乐多网志
http://blog.roodo.com/liaosankai
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 203.67.245.196
1F:推 HuangJC :谢谢,要看懂还要很多时间;基本上仍是在问'怎麽TRACE' 07/12 02:22
2F:→ HuangJC :一个变数不知何时被new,不知是什麽class,大概就这样 07/12 02:23
3F:推 kylekai :应该是 var $component 才对. 07/12 13:03