在module.config.php文件中,我为'password_has_type'设置了值。在控制器中我想访问它。这是我的module.config.php文件:
'auth' => array(
'password_hash_type' => 'sha512',
),
'di' => array(
'instance' => array(
'alias' => array(
'auth' => 'Auth\Controller\AuthController',
'auth_login_form' => 'Auth\Form\LoginForm',
),...
在controller
中,我使用了
use Auth\Module
并且在Action
方法中我尝试通过
echo Module::getOption('password_hash_type');
但我无法获得任何价值?
那么请有人帮助我获得这个价值吗?
答案 0 :(得分:5)
请在Access to module config in Zend Framework 2查看我的回答。
但为了使问题更具体,你可以这样做:
$config = $this->getServiceLocator()->get('Config');
$pwht = $config['auth']['password_hash_type'];
我希望这有帮助!
答案 1 :(得分:0)
您可以借助别名和参数来完成此操作。将它放入di->instance
数组:
'Auth\Controller\AuthController' => array(
'parameters' => array(
'passwordHashType' => 'sha512'
)
),
这是你的控制者:
namespace Auth\Controller;
use Zend\Mvc\Controller\ActionController;
class AuthController extends ActionController
{
protected $passwordHashType;
public function indexAction()
{
echo $this->passwordHashType;
}
public function setPasswordHashType($passwordHashType)
{
$this->passwordHashType = $passwordHashType;
return $this;
}
}