2012-03-07 5 views
2

PHP에서 클래스를 동적으로로드하고 있습니다. 이 파일과 클래스 이름은 데이터베이스에서 나옵니다. 이 파일에는 클래스와 메소드가 있어야합니다. 나는 그것을 인터페이스로 해결하려했지만, 내가 어떻게 그것을 가장 아름다운 방법으로 할 수 있는지 알지 못한다.PHP 코드를 동적으로로드하고 클래스가 인터페이스를 구현하는지 확인하는 방법

제안 사항은 무엇입니까?

답변

4

class_exists()을 사용하여 클래스가 정의되었는지 확인하고 클래스에 메소드가 있는지 확인하려면 method_exists()을, 클래스가 인터페이스를 구현하는지 확인하려면 instanceof을 사용하십시오. 사용

if (class_exists('ClassName')) { 
     // Do something 
    } 

가 메소드/함수가 존재하는지 여부를 확인하려면 :

if (method_exists('methodName')) { 
     // Do something 
    } 
+0

간결, 정확한 – Pateman

2

사용하는 클래스가 정의되어 있는지 확인하십시오. +1!
+1

클래스가 ** 정의 **되어 있고 인스턴스화되지 않았다는 것을 의미합니다. 인스턴스 생성 된 클래스는 객체를 생성합니다. – nickb

관련 문제