Συνάρτηση is_a
Η συνάρτηση is_a δέχεται ένα αντικείμενο και ένα όνομα κλάσης, επιστρέφοντας true εάν το αντικείμενο είναι στιγμιότυπο αυτής της κλάσης ή του απογόνου της. Ως τρίτη παράμετρο μπορεί να καθοριστεί εάν πρέπει να ληφθεί υπόψη η κληρονομικότητα (από προεπιλογή true).
Σύνταξη
is_a(object, class_name, allow_string = true);
Παράδειγμα
Ας ελέγξουμε εάν το αντικείμενο ανήκει στην κλάση stdClass:
<?php
$obj = new stdClass();
var_dump(is_a($obj, 'stdClass'));
?>
Αποτέλεσμα εκτέλεσης κώδικα:
true
Παράδειγμα
Ας ελέγξουμε την κληρονομικότητα κλάσεων:
<?php
class ParentClass {}
class ChildClass extends ParentClass {}
$child = new ChildClass();
var_dump(is_a($child, 'ParentClass'));
?>
Αποτέλεσμα εκτέλεσης κώδικα:
true
Παράδειγμα
Ας ελέγξουμε τη λειτουργία με διεπαφές:
<?php
interface MyInterface {}
class MyClass implements MyInterface {}
$obj = new MyClass();
var_dump(is_a($obj, 'MyInterface'));
?>
Αποτέλεσμα εκτέλεσης κώδικα:
true
Δείτε επίσης
-
τη συνάρτηση is_subclass_of,
που ελέγχει την κληρονομικότητα -
τη συνάρτηση instanceof,
τον τελεστή ελέγχου στιγμιότυπου -
τη συνάρτηση get_class,
που επιστρέφει την κλάση του αντικειμένου -
τη συνάρτηση class_implements,
που επιστρέφει τις διεπαφές της κλάσης