354 of 410 menu

__invoke-metodi

Taikamenetelmä __invoke mahdollistaa luokan ilmentymän kutsumisen funktiona. Kun oliota kutsutaan funktiona, PHP kutsuu automaattisesti tätä metodia. Metodi voi ottaa vastaan parametreja ja palauttaa arvon kuten tavallinen funktio.

Syntaksi

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

Esimerkki

Luodaan luokka metodilla __invoke ja kutsutaan oliota funktiona:

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

Koodin suorituksen tulos:

'Hello, John!'

Esimerkki

__invoke:n käyttö useilla parametreilla:

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

Koodin suorituksen tulos:

8

Esimerkki

Olion kutsumiskelpoisuuden tarkistus is_callable:n avulla:

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

Koodin suorituksen tulos:

false true

Katso myös

  • metodi __construct,
    joka on luokan konstruktori
  • metodi __toString,
    joka mahdollistaa olion esittämisen merkkijonona
Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää