2011-06-10 119 views
0

我有一個類Blocka_Model(實際上是KOhana框架中的一個模型),帶有2個函數input()和output()。函數輸入從函數wriiten中調用一個名爲Home_Controller的控制器,它將參數傳遞給函數輸入。現在我希望傳遞給input()函數的參數可以在函數output()中訪問。函數input()和output()都在Model類Blocka_Model中。我想從()輸入到輸出參數$ VAL)將一個函數中的變量值傳遞給另一個使用會話

class Blocka_Model extends Block_Model { 

    protected $tablname = 'moves'; 

    public function input($val) { ... } 

    public function output() { ... } 

} 
+0

你的代碼的格式是......不對。有什麼遺漏嗎?爲什麼有這麼多的空間和換行符? – 2011-06-10 03:58:48

+0

我只寫了2個函數,我需要在輸出()函數中使用會話訪問$ val – dhaam 2011-06-10 04:00:30

+0

我試圖編輯它,因此格式正確,但我不確定它代表的是什麼。 'output()'方法似乎屬於一個對象,但不屬於Blocka_Model類。 – 2011-06-10 04:02:16

回答

1

由於您的標題說,你希望使用session

class Blocka_Model extends Block_Model { 

    protected $session_unique_id; 

    public function __construct() { 
     $this->session_unique_id = uniqid(); 
    } 

    /* 
    * Save $val in our current session 
    */ 
    public function input($val) { 
     $_SESSION[get_class($this).$this->session_unique_id] = $val; 
    } 

    /* 
    * Check for a value in our session 
    * - if it is set, return it 
    * - else return null 
    */ 
    public function output() { 
     return isset($_SESSION[get_class($this).$this->session_unique_id]) ? 
        $_SESSION[get_class($this).$this->session_unique_id] : null; 
    } 

} 
+0

完全錯過了'$ _SESSION'部分。 – 2011-06-10 04:09:44

+0

OP將此作爲註釋留在我的會話式答案中:*但是,我嘗試過,但它在某種程度上在這裏不起作用,實際上存在許多函數和不同的類,它的實際框架如此想要使值$ val a會話變量,它的$ val張貼在一個函數內的函數getposted()函數內部的一個類Home_COntroller * – 2011-06-10 04:12:27

+0

讓我試試看,我想用sesison,因爲其他常用的方法沒有工作,謝謝 – dhaam 2011-06-10 04:13:38

相關問題