作者HuangJC (吹笛牧童)
看板PHP
标题Re: [请益] 有没有法子把 $this pass 掉
时间Sun Jul 13 18:31:25 2008
其实无法描述清楚大概是我改不掉,或要改很久的毛病了 :P
我试着写一个假想的程式片段来描述吧!!
demo.thtml
<?php
//do something
$this->here();
?>
我改成
demo.php
<?php
//do something
here();
?>
然後在我自己的程式里就可以载入它,但因为 here 没定义,我就得生给它
my.php
<?php
function here()
{
//cheat code
}
require 'demo.php';
?>
这方法其实还不错,都已经成功了
但我其实很想写一支程式,不必去手动改 demo.php
my_want.php
<?php
//powerful cheat env. in need,I can't do it
require 'demo.thtml';
?>
目前是这样
刚想到一个法子
my_try.php
<?php
class Cheat
{
function here()
{
//cheat code
}
ruquire 'demo.thtml';
}
$run=new Cheat;//make it run
?>
如上,既然我把整个 demo.thtml 载入到一个 class 里了
那麽 $this 就指到 class 内部,我也就可以骗过它了
结果我得到一个错误讯息 :P
syntax error, unexpected T_REQUIRE, expecting T_FUNCTION in my_try.php
译:小子,这样想骗过我?不可以啦,再回去改一版试试
突然之间就 抖抖 了,唉..
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.59.179.152
1F:推 weiyucsie :那就放在函数里就好了?XD 07/13 18:42
2F:→ weiyucsie :不过如果里面有函数的话不知道会不会炸XD 07/13 18:45
3F:→ weiyucsie :我指的是thtml里面如果有的话 07/13 18:45
4F:→ HuangJC :对..有一堆问题 XD 07/13 18:57
※ 编辑: HuangJC 来自: 61.59.179.152 (07/14 02:40)
5F:→ HuangJC :看懂Cake 再回头看这问题,其实不可能炸;因为 Cake 07/14 02:42
6F:→ HuangJC :自己就这麽做的 :) 07/14 02:42
7F:→ weiyucsie :我是怕你的thtml里面有函数,class有的没的 07/14 18:07
8F:→ HuangJC :那些都有,都没炸 XD ;cake 能做到就有法子require 07/14 18:47
9F:→ weiyucsie :应该是进到global scope了 include的说明里面有写 07/14 19:55