2017-05-05 2 views
0

클래스 함수를 실행 한 후에 변수를 가져 오려고합니다. 나는 보통 2 줄로 처리한다.PHP가 메서드를 실행하고 한 줄에 변수를 가져옵니다.

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

나는 한 줄로 어떻게 할 수 있는가?

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

일반적으로

내가 다른 파일

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

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

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

당신이 instance_variable 의미합니까이 –

+0

에 대한 자세한 정보를 제공 할 수 있습니다 : 더 명확성을 위해

은 아래 예 참조? –

답변

0

왜() 쉽게 function_variable을 반환하지 않습니다 기능을 하나의 함수에서 다른 바르를 위해 전화를 걸 UPDATE?

0

당신은 기능은 $ var에 할당 할 값을 반환하면 OOP, 의 기초에 대해 배울 필요가, 당신은 할 수 있습니다 :

$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; 

?> 
관련 문제