Συνάρτηση class_uses
Η συνάρτηση class_uses επιστρέφει έναν πίνακα με τα ονόματα των traits,
που χρησιμοποιεί η καθορισμένη κλάση ή αντικείμενο. Η συνάρτηση δέχεται
μία υποχρεωτική παράμετρο - κλάση ή αντικείμενο, και μία προαιρετική
παράμετρο, που καθορίζει αν πρέπει να συμπεριληφθούν τα traits των γονικών κλάσεων.
Σύνταξη
class_uses(object|string $class, bool $autoload = true): array
Παράδειγμα
Δημιουργούμε πολλά traits και μία κλάση που τα χρησιμοποιεί:
<?php
trait TraitA {
public function methodA() {}
}
trait TraitB {
public function methodB() {}
}
class MyClass {
use TraitA, TraitB;
}
$res = class_uses('MyClass');
print_r($res);
?>
Αποτέλεσμα εκτέλεσης κώδικα:
[
'TraitA' => 'TraitA',
'TraitB' => 'TraitB'
]
Παράδειγμα
Ελέγχουμε τα traits για αντικείμενο:
<?php
$obj = new MyClass();
$res = class_uses($obj);
print_r($res);
?>
Αποτέλεσμα εκτέλεσης κώδικα:
[
'TraitA' => 'TraitA',
'TraitB' => 'TraitB'
]
Παράδειγμα
Εργασία με κληρονομικότητα:
<?php
class ParentClass {
use TraitA;
}
class ChildClass extends ParentClass {
use TraitB;
}
$res = class_uses('ChildClass');
print_r($res);
?>
Αποτέλεσμα εκτέλεσης κώδικα:
[
'TraitB' => 'TraitB'
]
Δείτε επίσης
-
τη συνάρτηση
class_parents,
που επιστρέφει τις γονικές κλάσεις -
τη συνάρτηση
class_implements,
που επιστρέφει τις διεπαφές της κλάσης