2017-05-05 60 views
0

我想在運行類函數後獲取變量。我通常做兩行:php運行方法並在一行中獲取變量

$object->function(); 
    $var = $object->function_variable; 

我可以做到這一點在某一行嗎?

$var = $object->function()->function_variable; 

UPDATE

總的來說,我想從一個函數在不同的文件

$var = $object->function()->function_variable1; 

    $var = $object->function()->function_variable2; 

    $var = $object->function()->function_variable3; 
+0

你能提供有關此 –

+0

你的意思instance_variable更多信息? –

回答

0

爲什麼不()函數輕鬆地返回您function_variable要求不同的瓦爾?

0

您需要了解OOP, 的基礎知識如果函數返回要分配到$ VAR值,那麼你可以做:

$var = $object->function(); 
0

我想你想訪問實例變量不是函數變量。因此,這將是這樣的:

$var = $object->function()->instance_variable; 

對於這個工作,你的函數應該與實例變量返回一個對象,那麼只有你將能夠實現這一目標。

爲了更清楚看到下面的例子:

<?php 

class Name 
{ 
    public $fname, $lname; 

    function __construct($fname, $lname) 
    { 
    $this->fname = $fname; 
    $this->lname = $lname; 
    } 
} 

class Person 
{ 
    private $name; 

    public function __construct($fname, $lname) 
    { 
    $this->setName($fname, $lname); 
    } 

    public function getName() 
    { 
    return $this->name; 
    } 

    private function setName($fname, $lname) 
    { 
    $this->name = new Name($fname, $lname); 
    } 
} 

$p = new Person('Raj', 'Mishra'); 
$name = $p->getName(); 
print $var = $name->fname;   // $var = $object->instance_variable1; 
print " "; 
print $var = $p->getName()->lname; // $var = $object->function()->instance_variable2; 

?>