354 of 410 menu

__invoke әдісі

__invoke сиқырлы әдісі класс данасын функция ретінде шақырылуға мүмкіндік береді. Объект функция ретінде шақырылған кезде, PHP бұл әдісті автоматты түрде шақырады. Әдіс параметрлер қабылдай алады және қарапайым функция сияқты мән қайтара алады.

Синтаксис

class MyClass { public function __invoke(...$args) { // реализация } }

Мысал

__invoke әдісі бар класс жасап, объектіні функция ретінде шақырайық:

<?php class Greeter { public function __invoke($name) { return "Hello, $name!"; } } $greet = new Greeter(); echo $greet('John'); ?>

Кодты орындау нәтижесі:

'Hello, John!'

Мысал

__invoke әдісін бірнеше параметрлермен қолдану:

<?php class Calculator { public function __invoke($a, $b) { return $a + $b; } } $calc = new Calculator(); echo $calc(5, 3); ?>

Кодты орындау нәтижесі:

8

Мысал

is_callable функциясы арқылы объекттің шақырыла алатынын тексеру:

<?php class Test {} $obj1 = new Test(); $obj2 = new class { public function __invoke() {} }; var_dump(is_callable($obj1)); var_dump(is_callable($obj2)); ?>

Кодты орындау нәтижесі:

false true

Сондай-ақ қараңыз

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