1. Constructor Property Promotion
İşte bu çok tatlı, artık propertylerimizi sadece constructor da tanımlamamız yeterli.
Eskisi :
PHP Kod:
class Money {
public Currency $currency;
public int $amount;
public function __construct(Currency $currency,int $amount)
{
$this->currency = $currency;
$this->amount = $amount;
}
}
PHP Kod:
class Money {
public function __construct(
public Currency $currency,
public int $amount) {
}
}
Daha önce static veya self dönüş tipi denedinmi ? denemedin çünkü php 8 ile ilk defa deniceksin.
Yani :
PHP Kod:
class Foo {
public function test(): static {
return new static();
}
}
Hayır, kullanmayın, kötü çok kötü bir alışkanlık.
Şimdi bunu koymalarındaki amaç union types, analayabiliyorum ama union types a da karşıyım ben, şeklimiz şemalimiz belli olmalı, biliyorum, patron sabah gelip bişi istediğinde return type ı mixed yapacaksın, şimdiden üzüldüm
.- Property ler için de kullanılabileicekmiş.
- Aynı zamanda nullabe olduğu için : ?mixed hata vercekmiş.
array, bool, callable, int, float, null, object, resource, string
Güya şu faydaları varmış,
- Method null veya void dönebilirmiş
- Farklı tiplerde değer bekleyebilirmişiz
- Zorla güzellik olmazmış
)

