> 백엔드 개발 > PHP 문제 > PHP에서 이 오류 문제를 해결하세요.

PHP에서 이 오류 문제를 해결하세요.

hzc
풀어 주다: 2023-03-01 12:22:02
원래의
3045명이 탐색했습니다.

PHP에서 이 오류 문제를 해결하세요.

속성을 호출했을 때 php5에서는 오류가 보고되지 않았으나 php7에서는 오류가 보고되었습니다. 코드는 다음과 같습니다

<?php class test { protected $view; protected function testxxx() { $this->view = xxx; } }
로그인 후 복사

Another class

<?php cless xxx extends test { public function xx() { self::testxxx() } }
로그인 후 복사

오류 메시지는 다음과 같습니다.

[29-Dec-2017 23:21:45 Asia/Shanghai] PHP Fatal error: Uncaught Error: Using $this when not in object context in
로그인 후 복사

The 답변은 해결되었습니다. 네 어디선가 변수함수를 사용해서 해결이 되었습니다

call_user_func([new xxx, &#39;函数名&#39;])
로그인 후 복사

게다가 모두가 self 대신 $this를 사용해야 한다고 했던 문제에 대해 설명은 다음과 같습니다.

public: self::var 调用父类方法或者属性 parent::method 调用父类方法 实例中可以通过$this->var 调用public类型的方法或属性 protected: self::var 调用父类方法或者属性 parent::method 调用父类方法 实例中不可以通过$this->var 调用public类型的方法或属性 private: 只能在该类中使用
로그인 후 복사

Based 위의 사항에 대해서는 this와 self를 사용하여 이 경우 모두 가능합니다.

추천 튜토리얼: "php 튜토리얼"

위 내용은 PHP에서 이 오류 문제를 해결하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿