"엄격한 표준: 비정적 메서드는 정적으로 호출하면 안 됩니다" 오류 메시지 정적으로 호출됨"은 정적 호출을 사용하여 비정적 메서드에 액세스할 때 발생합니다. 이 오류를 해결하기 위해 정적으로 호출하려는 경우 모든 메서드가 정적으로 선언되도록 코드를 수정합니다.
제공된 코드에서 Page 클래스의 메서드는 정적으로 선언되지 않았지만 그들은 정적으로 호출됩니다. 이 문제를 해결하려면 메서드 선언에 static 키워드를 추가해야 합니다.
Page.php 수정
class Page{ // ... public static function getInstanceByName($name=''){ // ... } // ... }
이러한 메서드를 정적으로 만들어서 다음을 수행할 수 있습니다. index.php에서 볼 수 있듯이 클래스 이름을 사용하여 액세스할 수 있습니다. file:
// ... if($page){ // load by name $r = Page::getInstanceByName($page); if($r && isset($r->id)) $id = $r->id; } // ...
추가 참고 사항
위 내용은 \'엄격한 표준: 비정적 메서드는 정적으로 호출하면 안 됩니다\' PHP 오류를 수정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!