354 of 410 menu

A __invoke metódus

A mágikus __invoke metódus lehetővé teszi egy osztály példányának függvényként való meghívását. Amikor egy objektumot függvényként hívnak meg, a PHP automatikusan meghívja ezt a metódust. A metódus paramétereket fogadhat és értéket adhat vissza, mint egy közönséges függvény.

Szintaxis

class MyClass { public function __invoke(...$args) { // megvalósítás } }

Példa

Hozzunk létre egy osztályt __invoke metódussal és hívjuk meg az objektumot függvényként:

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

A kód végrehajtásának eredménye:

'Hello, John!'

Példa

A __invoke használata több paraméterrel:

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

A kód végrehajtásának eredménye:

8

Példa

Objektum meghívhatóságának ellenőrzése a is_callable segítségével:

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

A kód végrehajtásának eredménye:

false true

Lásd még

  • a __construct metódus,
    amely az osztály konstruktora
  • a __toString metódus,
    amely lehetővé teszi az objektum sztringként való megjelenítését
Magyar
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
A weboldal működéséhez, elemzéshez és személyre szabáshoz sütiket használunk. Az adatfeldolgozás a Adatvédelmi irányelvek szerint történik.
összes elfogadása beállítás elutasítás