는 아래와 같은 몇 가지 임의의 클래스가 있다고 가정 내 이전 질문, 나는 강한 자바 배경에서 온다 변수를 함께 연결할 수 있습니다 System.out.println()
다른 개체 메서드를 호출합니다. PHP에서 가능한지 알고 싶습니다.저장 객체
저장 객체
답변
네, 틀림없이이 예제를 참조하십시오.
class Foo {
public function hello() {
return 'hello world';
}
}
class Bar {
public $driver = NULL;
public function __construct() {
$this->driver = new Foo;
}
}
$test = new Bar;
echo $test->driver->hello();
일부 다른 의견
return($foovar);
- 는 괄호는 여기에 필요하지 않습니다. 이 경우는 예를
public $foovar;
를 들어,self::$foovar
클래스 멤버는 해당 액세스 유형을 지정된해야합니다입니다, 정적 않는
$this->foovar
을 사용해야합니다. 당신이 이동하고 왜 Java에서 PHP까지 나를 넘어선, 행운을 빌어 요.
자바가 훌륭하기 때문에 움직이기는하지만 웹 개발의 많은 부분에서 PHP를 완벽하게 적용하고 있습니다. –
가장 확실하게 가능합니다.
$B
의 $F
가 공개 또는 $F
다음 $B->F->getFoo()
잘 작동 반환 할 의사가 바에서 __get($var)
방법이있는 경우.
매우 일반적 일뿐만 아니라 매우 일반적입니다. 한 번 사용하면 표시됩니다 delegation입니다.
예,하지만 몇 가지 추가 구문이 있습니다. 나는 게터 메소드를 사용하여 조금 더 나은 것을 희망적으로 보여 주었지만 클래스에서 변수를 공개하면 필요하지 않습니다.
<?php
class Foo
{
private $foovar;
public function __construct()
{
$this->foovar = "Foo";
}
public function getFooVar()
{
return $this->foovar;
}
}
class Bar
{
private $fooclass;
public function __construct()
{
$this->fooclass = new Foo();
}
public function getFoo()
{
return $this->fooclass;
}
}
$bar = new Bar();
print $bar->getFoo()->getFooVar();
?>
물론 그 고객의 예는 * 객체 * (클래스 인스턴스)이 아닌 * 클래스 *를 저장해 체인 방법을
// first clean your code
class Foo
{
public $foovar = NULL;
public function __construct()
{
$this->foovar = "Foo";
return $this;
}
public function getFoo()
{
return $this->foovar;
}
}
class Bar
{
public $F = NULL;
public function __construct()
{
$this->F = new Foo();
return $this;
}
}
$B = new Bar(); // create the object. The constructor returns the whole object
// so we have full access to the methods
// firs call the object $B which return in the constructor $this so we call now
// method F now the object F returns also in the constructor the whole object $this
// we now can access the method getFoo() which will print Foo
echo $B->F->getFoo();
처음에 $ foovar를 NULL로 설정하는 이유는 무엇입니까? –
왜냐하면 나는 모든 값을 기본값으로 초기화하기 때문에; 그것의 필요한 것은 아니지만 나는 – streetparade
- 1. 저장 객체
- 2. 레일에있는 세션에 객체 저장
- 3. 배열에 객체 저장
- 4. iOS에 JSON 객체 저장
- 5. 팩토리 클래스 - 객체 저장
- 6. 저장 객체 안드로이드
- 7. 저장 객체 내가 모델이
- 8. 객체 지향 디자인 : 복잡한 객체 저장
- 9. 복합/중첩 객체 그래프 저장
- 10. 관계형 데이터베이스에 R 객체 저장
- 11. PHP를 사용하여 배열에 객체 저장
- 12. 클래스 라이브러리에 ab 객체 저장
- 13. 세션 변수에 PHP 객체 저장
- 14. 관리 객체 컨텍스트 삭제 후 객체 저장 objc_exception_throw 오류 발생
- 15. Rails 3 Paperclip Uploadify : 객체 저장 전에 업로드 된 객체 첨부 파일 저장
- 16. NHibernate : Fluent Nhibernate를 사용하여 자식 객체 저장
- 17. 자바 : JOptionPane의 객체 배열에 데이터 저장
- 18. PHP에서 MySQL로 객체 전달하기 저장 프로 시저
- 19. Google App Engine : 객체 목록 저장 중?
- 20. BlackBerry 영구 객체/저장 뉘앙스 질문
- 21. 상태 저장 세션 빈, 객체 반환
- 22. AppDelegate = SIGABRT에 CoreData (새 객체 저장)
- 23. 레일 - before_save 콜백에 다른 모델의 객체 저장
- 24. Google App Engine 동적 Java 객체 저장
- 25. 나중에 사용하기 위해 iOS에 객체 저장
- 26. 핵심 데이터 : 고유 객체 ID 저장
- 27. jQuery AJAX와 PHP로 객체 배열 저장?
- 28. Linq 클래스와 속도를 사용하여 캐시에 객체 저장
- 29. 변경된 객체 저장 장치 또는 물체 상태
- 30. 모델 양식 저장. 저장된 객체 가져 오기
이라고 할 수있다. –