2012-01-26 11 views
8

module.config.phpファイルで、 'password_has_type'の値を設定しました。そしてコントローラでは、私はそれにアクセスしたいと思います。Zend Framework 2:コントローラからモジュールのコンフィグレーション値にアクセスするには

'auth' => array(
    'password_hash_type' => 'sha512', 
), 
'di' => array(
    'instance' => array(
     'alias' => array(
      'auth' => 'Auth\Controller\AuthController', 
      'auth_login_form' => 'Auth\Form\LoginForm', 
     ),... 

controllerでは、私は私が

echo Module::getOption('password_hash_type'); 

しかし、私によってアクセス値を取得しようとAction方法で

use Auth\Module 

とを使用している:ここに私のmodule.config.phpファイルです何の価値も得られませんでしたか?

だから誰でも私にその価値を手伝ってもらえますか?

+0

'$ auth = Module :: getOption( 'auth'); echo $ auth ['password_hash_type']; '? – bububaba

+0

またはレジストリ内の配列を設定し、どこでも取得します – max4ever

答えて

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; 
    } 
} 
5

Access to module config in Zend Framework 2で私の答えを参照してください。

しかし、あなたの質問に、それはより具体的にするために、あなたはこれを行うだろう:

$config = $this->getServiceLocator()->get('Config'); 
$pwht = $config['auth']['password_hash_type']; 

私はこれが役に立てば幸い!