354 of 410 menu

Meetod __invoke

Maagiline meetod __invoke võimaldab klassi eksemplaril kutsuda välja nagu funktsiooni. Kui objekti kutsutakse nagu funktsiooni, kutsub PHP automaatselt seda meetodit välja. Meetod võib võtta parameetreid ja tagastada väärtuse nagu tavaline funktsioon.

Süntaks

class MyClass { public function __invoke(...$args) { // implementatsioon } }

Näide

Loome klassi meetodiga __invoke ja kutsume objekti välja nagu funktsiooni:

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

Koodi täitmise tulemus:

'Tere, John!'

Näide

__invoke kasutamine mitme parameetriga:

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

Koodi täitmise tulemus:

8

Näide

Objekti kutsumisvõime kontrollimine kasutades is_callable:

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

Koodi täitmise tulemus:

false true

Vaata ka

  • meetod __construct,
    mis on klassi konstruktor
  • meetod __toString,
    mis võimaldab objekti esitada stringina
Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu