Cuvântul cheie trait

Cuvântul cheie trait este utilizat pentru a crea traite - un mecanism de reutilizare a codului în PHP. Traitele sunt similare cu clasele, dar sunt concepute pentru a grupa funcționalitatea în unități mici și ușor de înțeles. Acestea pot fi incluse în clase folosind cuvântul cheie use.

Sintaxă

phptrait TraitName {
  // proprietăți și metode ale traitului
  public function method1() {
    // implementare
  }
}

Exemplu

Să creăm un trait simplu și să-l includem într-o clasă:

php<?php
  trait Logger {
    public function log($message) {
      echo "Logging: " . $message;
    }
  }

  class User {
    use Logger;
  }

  $user = new User();
  $user->log("User created");
?>

Rezultatul executării codului:

php'Logging: User created'

Exemplu

O clasă poate utiliza mai multe traite simultan:

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();
?>

Rezultatul executării codului:

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

Vezi și

  • comanda class,
    care este utilizată pentru a declara clase
  • comanda interface,
    care este utilizată pentru a declara interfețe