2011-05-24 66 views
0

我是類和對象的新手。在這裏我正在製作一個invoice的應用程序。所以對於在框架中的控制器,我已經將它們作爲處理程序。所以對於UserHandler我已經制作了此查詢:呈現控制器的值來查看

<?php 
class UserHandler { 
    public $db; 
    public function __construct($db) { 
    $this->db = $db; 
    } 
    public function index() { 
    print_r($this->db->query("SELECT * FROM nt_user")); 
    } 
} 

它顯示結果在數組中,因爲我想這樣。

Array ([0] => 1 [id] => 1 [1] => xyz [name] => xyz [2] => 5d6305f2 [password] => 5d6305f2 [3] => 2011-05-24 14:59:17 [created_at] => 2011-05-24 14:59:17 [4] => 2011-05-24 14:59:17 [updated_at] => 2011-05-24 14:59:17) 

現在我想在視圖模板中顯示結果。視圖模板是另一個文件,如何呈現視圖的所有處理程序值。 我想查看頁面顯示是這樣的:

name: 
Password: 

就像登錄box.So請告訴我該怎麼做?

+1

你是使用特定的框架還是你自己推出? – martynthewolf 2011-05-24 13:21:55

+0

雅我只是在這樣做,而不是任何框架。 – NewUser 2011-05-24 13:32:02

回答

0

您可以用魔術方法__get和__set的值,如創建一個靜態類:

class Data { 

    public static $atributos = array(); 

    public function __get($chave) { 
     return array_key_exists($chave, $this->atributos) ? $this->atributos[$chave] : NULL; 
    } 

    public function __set($chave, $valor) { 
     $this->atributos[$chave] = $valor; 
    } 

} 

要設置的值,可以使用:Data::__set('view_data', $my_var);

在視圖你只是做:Data::__get('view_data');

我認爲它會工作=)

1

您是使用特定的框架還是自己推出?例如Zend Framework就是這樣。

<?php 
class UserHandler extends Zend_Controller_Action { 
    public $db; 
    public function __construct($db) { 
    $this->db = $db; 
    } 
    public function index() { 
    $this->view->data = $this->db->query("SELECT * FROM nt_user")); 
    } 
} 

然後在視圖

<?php 
    //view.phtml 
    var_dump($this->data); 

這會給你,你在您的文章有數組轉儲。我不打算做循環和顯示的東西,但我相信你可以自己解決。