Constructor Property Promotion es una sintaxis abreviada simple para declarar y asignar propiedades de clase desde el constructor. Constructor Property Promotion es una nueva sintaxis proporcionada en la versión más nueva de PHP 8 que permite la declaración de propiedades de clase y la asignación de constructores directamente desde el constructor sin entrar en la condición de código repetitivo.
En la programación de computadoras, el código repetitivo son secciones de código que se repiten en múltiples lugares con poca o ninguna variación, lo que hace que el código sea repetitivo, complejo e incómodo de ver. Antes de esta nueva actualización en PHP, tenemos que repetir las variables en el constructor como se muestra a continuación.
Ejemplo 1:
PHP
<?php class GFG { public $name; public $university; // Boilerplate code function __construct($name, $university) { $this->name = $name; $this->university = $university; } function get_name() { return $this->name; } function get_university() { return $this->university; } } $a = new GFG("Atul Sisodiya", "JECRC"); echo $a->get_name(); echo "<br>"; echo $a->get_university(); ?>
Producción:
Atul Sisodiya JECRC
Ejemplo 2: después de la última actualización de la versión 8 de PHP, proporciona Promoción de propiedad de constructor de sintaxis más simple.
PHP
<?php class GFG { public function __construct( public string $name, public string $university) { $this->name = $name; $this->university = $university; } function get_name() { return $this->name; } function get_university() { return $this->university; } } $a = new GFG("Atul Sisodiya", "JECRC"); echo $a->get_name(); echo "<br>"; echo $a->get_university(); ?>
Producción:
Atul Sisodiya JECRC