2011-12-15 3 views
1

私はZFの基本インストールをセットアップしましたが、データベースに接続しようとしています。私はconfig.iniなどを使用してdbを初期化するより良い方法があることを感謝しますが、バグを追跡するために、配列のように接続の詳細を真っ直ぐに置いています。Zend Frameworkのメンバ 'functionFetchAll()non-object'

$config=array('host'=>'localhost', 
        'username'=>'test_user', 
        'password'=>'test_pass', 
        'dbname'=>'test_db'); 

    $this->db= new Zend_Db_Adapter_Pdo_Mysql($config); 
    $stmt="SELECT * FROM pages"; 

    $results=$this->db->fetchAll($stmt); 

コードはクラスApplication_Model_Page {}

IインスタンスIは、次のメッセージを取得モデルのコンストラクタで呼び出される:「非オブジェクトに関数はfetchAll()」メンバを

を私はこれがオブジェクトではないことを知っていますが、なぜ失敗したのか理解できません。

私は標準mysql_connectを実行し、古典的なPHPと上記の詳細を使用して選択し、これらは正しく動作します。

db接続がコンストラクターにない場合、Application_Model_Pageのインスタンスを作成することもできます。私はちょうど「こんにちは世界」をエコーアウト

誰かが私にこの理由がありますか?

ジョン

答えて

2

$dbの代わり$this->dbを使用してみてください。私は、setterはApplication_Model_Pageクラスで利用できないと思います。