Class Foo {
public function bar() {
echo $a;
}
}
$foo = new Foo();
$b = "Hello world";
/* here inject somehow $b into $foo->bar() */
$foo->bar(); //prints "Hello world"
$b = "I <3 php!";
$foo->bar(); //keeps printing "Hello world"
有没有办法在 php 中做类似的事情而不将变量 $b 作为参数传递给方法 bar() 或类构造函数?我也不想使用全局变量。
编辑1: 谁在问我为什么要做如此奇怪的事情:做这样的事情对我来说会很好......
class Controller {
/**
* @post(name="address", type="email", required="true")
*/
public function foo() {
do_something_with($address);
//$address is equal to $_POST['address'] and have been checked
}
}
编辑 2: 我不是在寻找如何在 php 中实现注释。应该已经有注释实现了。鉴于我知道如何声明自己的注释,我想知道是否可以“神奇地”在方法中声明和初始化变量