353 of 410 menu

__callStatic Metodu

__callStatic metodu, PHP'de var olmayan veya erişilemeyen bir statik metot çağrılmaya çalışıldığında otomatik olarak çağrılan büyülü bir metottur. İlk parametre olarak çağrılan metodun adını, ikinci parametre olarak da iletilen argümanların bir dizisini alır.

Sözdizimi

public static function __callStatic(string $name, array $arguments);

Örnek

__callStatic metoduna sahip bir sınıf oluşturalım ve var olmayan bir statik metot çağırmaya çalışalım:

<?php class MyClass { public static function __callStatic($name, $args) { echo "Called static method '$name' with arguments: "; print_r($args); } } MyClass::nonExistentMethod(1, 2, 3); ?>

Kodun çalıştırılmasının sonucu:

Called static method 'nonExistentMethod' with arguments: [1, 2, 3]

Örnek

Farklı türlerde nesneler oluşturmak için basit bir cephe uygulayalım:

<?php class Factory { public static function __callStatic($name, $args) { if (strpos($name, 'create') === 0) { $className = substr($name, 6); return new $className(...$args); } throw new Exception("Method $name not found"); } } class User {} $user = Factory::createUser(); var_dump($user instanceof User); ?>

Kodun çalıştırılmasının sonucu:

true

Ayrıca Bakınız

  • __call metodu,
    nesnenin var olmayan metod çağrılarını yakalar
  • __get metodu,
    var olmayan özelliklere erişimleri yakalar
Türkçe
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenЎзбекOʻzbekTiếng Việt
Web sitesinin çalışması, analiz ve kişiselleştirme için çerezleri kullanıyoruz. Veri işleme, Gizlilik Politikası'na uygun olarak gerçekleşir.
tümünü kabul et özelleştir reddet