ฟังก์ชัน method_exists

ฟังก์ชัน method_exists ตรวจสอบว่าเมธอดที่ระบุมีอยู่ในคลาสหรืออ็อบเจกต์ที่กำหนดหรือไม่ พารามิเตอร์แรกของฟังก์ชันรับอ็อบเจกต์หรือชื่อคลาส และพารามิเตอร์ที่สองรับชื่อเมธอดในรูปของสตริง ส่งคืน true หากเมธอดมีอยู่ และ false ในกรณีอื่นๆ

ไวยากรณ์

phpmethod_exists(object|string $class, string $method): bool

ตัวอย่าง

มาตรวจสอบการมีอยู่ของเมธอดในคลาส:

php<?php
  class MyClass {
    public function test() {}
  }

  $res = method_exists('MyClass', 'test');
  var_dump($res);
?>

ผลลัพธ์การทำงานของโค้ด:

phptrue

ตัวอย่าง

มาตรวจสอบการมีอยู่ของเมธอดในอ็อบเจกต์:

php<?php
  $obj = new MyClass();
  $res = method_exists($obj, 'test');
  var_dump($res);
?>

ผลลัพธ์การทำงานของโค้ด:

phptrue

ตัวอย่าง

มาตรวจสอบเมธอดที่ไม่มีอยู่:

php<?php
  $res = method_exists('MyClass', 'notExists');
  var_dump($res);
?>

ผลลัพธ์การทำงานของโค้ด:

phpfalse

ดูเพิ่มเติม

  • ฟังก์ชัน property_exists,
    ซึ่งตรวจสอบการมีอยู่ของคุณสมบัติ
  • ฟังก์ชัน function_exists,
    ซึ่งตรวจสอบการมีอยู่ของฟังก์ชัน
  • ฟังก์ชัน get_class_methods,
    ซึ่งส่งคืนเมธอดของคลาส
  • ฟังก์ชัน is_callable,
    ซึ่งตรวจสอบความสามารถในการเรียก