353 of 410 menu

Метод __callStatic

Метод __callStatic PHP даги магик метод бўлиб, у мавжуд бўлмаган ёки дастлабки бўлмаган статик методни чақиришга уриниш аввал автоматик равишда чақирилади. У биринчи параметр сифатида чақирилган метод номини, иккинчисида эса берилган аргументлар рўйхатини қабул қилади.

Синтаксис

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

Мисол

__callStatic методи билан класс яратиб, мавжуд бўлмаган статик методни чақириб кўрамиз:

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

Кодни ишга тушириш натижаси:

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

Мисол

Турли хил турдаги объектлар яратиш учун оддий фасад амалга оширамиз:

<?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); ?>

Кодни ишга тушириш натижаси:

true

Шунингдек қаранг

  • метод __call,
    объектнинг мавжуд бўлмаган методларини чақиришларини қувватловчи
  • метод __get,
    мавжуд бўлмаган хусусиятларга мурожаатларни қувватловчи
Ўзбек
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeOʻzbekTiếng Việt
Биз веб-сайт ишлаши, таҳлил қилиш ва персоналлаштириш учун кукидан фойдаланамиз. Маълумотларни қайта ишлаш Махфийлик сиёсатига мувофиқ амалга оширилади.
ҳаммасини қабул қилиш мослаштириш рад этиш