Η λέξη-κλειδί trait

Η λέξη-κλειδί trait χρησιμοποιείται για τη δημιουργία τρέιτ - έναν μηχανισμό επαναχρησιμοποίησης κώδικα στην PHP. Τα τρέιτ μοιάζουν με κλάσεις, αλλά προορίζονται για την ομαδοποίηση λειτουργιών σε μικρές και κατανοητές μονάδες. Μπορούν να συνδεθούν σε κλάσεις χρησιμοποιώντας τη λέξη-κλειδί use.

Σύνταξη

phptrait TraitName {
  // ιδιότητες και μέθοδοι του τρέιτ
  public function method1() {
    // υλοποίηση
  }
}

Παράδειγμα

Ας δημιουργήσουμε ένα απλό τρέιτ και ας το συνδέσουμε σε μια κλάση:

php<?php
  trait Logger {
    public function log($message) {
      echo "Καταγραφή: " . $message;
    }
  }

  class User {
    use Logger;
  }

  $user = new User();
  $user->log("Δημιουργήθηκε χρήστης");
?>

Αποτέλεσμα εκτέλεσης κώδικα:

php'Καταγραφή: Δημιουργήθηκε χρήστης'

Παράδειγμα

Μια κλάση μπορεί να χρησιμοποιεί πολλά τρέιτ ταυτόχρονα:

php<?php
  trait Timestamp {
    public function getCurrentTime() {
      return date('Y-m-d H:i:s');
    }
  }

  trait Serializer {
    public function toJson($data) {
      return json_encode($data);
    }
  }

  class Product {
    use Timestamp, Serializer;
  }

  $product = new Product();
  echo $product->getCurrentTime();
?>

Αποτέλεσμα εκτέλεσης κώδικα:

php'2023-11-15 14:30:00'

Δείτε επίσης

  • την εντολή class,
    που χρησιμοποιείται για τη δήλωση κλάσεων
  • την εντολή interface,
    που χρησιμοποιείται για τη δήλωση διεπαφών