2011-05-22 47 views
0

可能有人請解釋爲什麼函數運行不正常? (坦克驗證)

function foo($a){$blah = $a}....... 
foo($CONSTANT); 

function foo() { $blah = $CONSTANT}....... 
foo(); 

頂端方法爲我工作之間的差異,另一種是不。 具體下面發現的if語句錯誤:

$this->setsession($user->id,$user->email, ($user->activated == 1) ? STATUS_ACTIVATED : STATUS_NOT_ACTIVATED); 

         if ($user->activated == 0) {       // fail - not activated 
          $this->error = array('not_activated' => ''); 

雖然這一發現是真的:

$this->setsession(); 

         if ($user->activated == 0) {       // fail - not activated 
          $this->error = array('not_activated' => ''); 
+0

你的代碼片段沒有意義。兩者具有相同的第二和第三行。除非你在'setSession()'中修改'$ user-> activated'的值,否則代碼不會失敗。你能清理代碼嗎? – JohnP 2011-05-22 08:31:20

+0

對不起,措辭不妙,我找不出解釋它的方法,因爲我甚至都不知道問題所在。我修正了我的實際代碼,謝謝! – mazlix 2011-05-22 08:35:27

回答

0

對不起,我寫得不好的問題。 區別在於變量作用域,我需要傳遞變量,因爲我調用的變量不能被引用。