2012-11-13 31 views
-5
class blah{ 

    function a(x){ 
    $variablename = b(); 
    .... 
    } 

    function b(){ 
    echo("why is this code (first line of function b) seemingly unreachable"); 
    .... 
    } 
} 

在本地服務器上執行時,它可以正常工作,但不是其他方式!簡單的PHP函數調用不再起作用

+0

你收到一個錯誤? – George

+3

'變量'不是一個有效的變量名稱。 –

+1

你打電話過得怎麼樣?看起來像使用'variable = b();'應該有一個未定義的常量錯誤。 – bcmcfc

回答

1

您在所有變量上缺少美元符號($)。

我真的很驚訝它在當地工作。

2
$variable = $this->b(); 

如果您從非靜態上下文中調用它。否則

$variable = self::b(); 
+0

很好,工作,謝謝! – Jimmy

+0

當我在本地服務器上執行它時,爲什麼我不需要包含'$ this->'? – Jimmy

0

這給一試:

class blah{ 
    function a($x){ 
     $this->b(); // <---- added this ... 
    } 

    public function b(){ 
     echo("why is this code (first line of function b) seemingly unreachable"); 
    } 

} 

$test = new blah; 
$test->a("some_string");