Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

การส่งเสริมคุณสมบัติตัวสร้างใน PHP 8


ใน PHP 8 จะมีการเพิ่มการโปรโมตคุณสมบัติคอนสตรัคเตอร์ ช่วยลดรหัสสำเร็จรูปจำนวนมากในขณะที่สร้างวัตถุอย่างง่าย คุณลักษณะนี้ช่วยให้เราสามารถรวมฟิลด์คลาส การกำหนดคอนสตรัคเตอร์ และการกำหนดตัวแปร ทั้งหมดนี้อยู่ในรูปแบบเดียว ลงในรายการพารามิเตอร์คอนสตรัคเตอร์

เราสามารถพูดได้ว่าแทนที่จะระบุคุณสมบัติของคลาสและตัวสร้าง เราสามารถรวมคุณสมบัติทั้งหมดเข้าด้วยกันโดยใช้การเลื่อนระดับคุณสมบัติของตัวสร้าง

ตัวอย่าง 1:รหัส PHP 7

<?php
   class Account {
      public float $a;
      public float $b;
      public float $c;
      public function __construct(
         float $a = 0.0,
         float $b = 0.0,
         float $c = 0.0,
      )
      {
         $this->a = $x;
         $this->b = $y;
         $this->c = $z;
      }
   }
?>

ตัวอย่าง 2:รหัส PHP 8

เราสามารถเขียนโค้ด PHP 7 ด้านบนใหม่เป็น PHP 8 ได้ดังนี้ -

<?php
   class Account {
      public function __construct(

         public float $a = 0.0,
         public float $b = 0.0,
         public float $c = 0.0,
      ) {}
   }
   $Account =new Account (10.90,20.0,30.80);
      print_r($Account->a);
      print_r($Account->a);
      print_r($Account->a);
?>

ผลลัพธ์

10.9 20 30.8

ในโค้ดด้านบนนี้ เราได้รวมการกำหนดคุณสมบัติและจำนวนประชากรแบบอินไลน์ในลายเซ็นคอนสตรัคเตอร์ รหัสนี้จะลบการซ้ำซ้อน

ตัวอย่าง 3:รหัส PHP 8 สำหรับการส่งเสริมคุณสมบัติตัวสร้าง

<?php
   class Employee {
      public function __construct(
         public int $id,
         public string $name,
      ) {}
   }
   $employee = new Employee(11, 'Alex');
      print_r($employee->id);
      print_r($employee->name);
?>

ผลลัพธ์

11 Alex