Trait kalit so'zi

trait kalit so'zi PHP da treytlar - kodni qayta ishlatish mexanizmini yaratish uchun ishlatiladi. Treytlar klasslarga o'xshaydi, lekin funktsionallikni mayda va tushunarli birliklar guruhlash uchun mo'ljallangan. Ularni use kalit so'zi yordamida klasslarga ulash mumkin.

Sintaksis

phptrait TraitName {
  // treytning xususiyatlari va metodlari
  public function method1() {
    // implementatsiya
  }
}

Misol

Oddiy treyt yaratamiz va uni klassga ulaymiz:

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

  class User {
    use Logger;
  }

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

Kodni bajarish natijasi:

php'Logging: User created'

Misol

Klass bir vaqtning o'zida bir nechta treytlardan foydalanishi mumkin:

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

Kodni bajarish natijasi:

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

Shuningdek qarang

  • class buyrug'i,
    bu klasslarni e'lon qilish uchun ishlatiladi
  • interface buyrug'i,
    bu interfeyslarni e'lon qilish uchun ishlatiladi