如何在静态方法中使用sfRequest实例?

时间:2012-05-16 05:47:18

标签: php symfony1 static-methods

我正在使用symfony 1.0.6,在动作文件中我们可以使用

设置错误
$this->getRequest()->setError("email", "The email address does not look valid.  Please re-check  the address."); 

但在/lib/model/User.php中使用时,使用静态函数

 public static function createNewUser() { 
 if(preg_match("/\bUsername\b/i", $err)) {
                        $sf_request->setError('rusername', "Username already taken. Please choose a different one");    
                    }
                    if(preg_match("/\bemail\b/i", $err)) {
                       $sf_request->setError('Email', "This email address is already registered. Please use another");
                    }

 }

导致错误:“未定义的变量:sfRequest”。

如何使用sfrequest实例在静态方法中设置错误? 可以创建sfRequest实例,同时它是抽象类......?

1 个答案:

答案 0 :(得分:1)

1.06很旧,不再正式支持。我建议您考虑升级到1.4.x,或者如果您不太深入项目,请查看symfony2。不确定1.06但在1.4.x中你可以这样做:

sfContext::getInstance()->getRequest();