[PHP] method_exists - 클래스의 메소드(멤버 함수)가 있는지 알아보기
그물터 관리/PHP
2022/05/08 20:28
PHP의 method_exists 함수는 클래스(class)의 메소드(method) 또는 클래스의 멤버 함수(member fucntion)가 선언되어 있는지를 알려준다.
선언된 메소드(멤버 함수)이면 bool 값으로 참(true)을 돌려주고, 선언되지 않은 메소드이면 bool값으로 거짓(false)을 돌려준다.
▣ 형식
- method_exists(object|string $object_or_class, string $method): bool
- 보기 ① : method_exists(클래스 객체, '메소드 이름');
- 보기 ② : method_exists('클래스 이름', '메소드 이름');
대상 클래스는 객체 또는 문자열로 넣을 수 있다.
▣ 보기
Class classA {
function methodA() {}
}
$newClassA = new classA;
$a = method_exists($newClassA, 'methodA'); // 보기 ①
$b = method_exists($newClassA, 'methodB'); // 보기 ①
$c = method_exists('classA', 'methodA'); // 보기 ②
$d = method_exists('classA', 'methodB'); // 보기 ②
print('$a : '); var_dump($a); print('<br />');
print('$b : '); var_dump($b); print('<br />');
print('$c : '); var_dump($c); print('<br />');
print('$d : '); var_dump($d); print('<br />');
▣ 출력 결과
$a : bool(true)
$b : bool(false)
$c : bool(true)
$d : bool(false)
덧글을 달아 주세요