PHP 7.4.25 Released!

Stringable arayüzü

(PHP 8)

Giriş

Stringable arayüzü sahip olduğu __toString() yöntemiyle dolaylı olarak gerçeklenir. Çoğu arayüzün tersine Stringable açıkça bildirilmiş olsun ya da olmasın, sahip olduğu sihirli __toString() yöntemini tanımlayan her sınıfı dolaylı olarak tanımlar.

Birincil kullanımı, bir dizge veya dizgeye dönüştürülebilir bir nesne kabul edecek bir işlevin değiştirgesine tür olarak string|Stringable birleşimini belirterek tür sınaması yapmasını sağlamaktır.

Sınıf Sözdizimi

interface Stringable {
/* Yöntemler */
}

Stringable örnekleri

Örnek 1 - Stringable Temel Kullanımı

<?php
class IPv4Address implements Stringable {
    private 
string $oct1;
    private 
string $oct2;
    private 
string $oct3;
    private 
string $oct4;

    public function 
__construct(string $oct1string $oct2string $oct3string $oct4) {
        
$this->oct1 $oct1;
        
$this->oct2 $oct2;
        
$this->oct3 $oct3;
        
$this->oct4 $oct4;
    }

    public function 
__toString(): string {
        return 
"$this->oct1.$this->oct2.$this->oct3.$this->oct4";
    }
}

function 
showStuff(string|Stringable $değer) {
    
// Stringable burada, __toString çağırarak
    // değeri dizgeye dönüştürür.
    
print $değer;
}

$ip = new IPv4Address('123''234''42''9');

showStuff($ip);
?>

Yukarıdaki örnek şuna benzer bir çıktı üretir:

123.234.42.9

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top