354 of 410 menu

Metode __invoke

Maģiskā metode __invoke ļauj klases instances tikt izsauktai kā funkcijai. Kad objekts tiek izsaukts kā funkcija, PHP automātiski izsauc šo metodi. Metode var pieņemt parametrus un atgriezt vērtību, tāpat kā parasta funkcija.

Sintakse

class MyClass { public function __invoke(...$args) { // implementācija } }

Piemērs

Izveidosim klasi ar metodi __invoke un izsauksim objektu kā funkciju:

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

Koda izpildes rezultāts:

'Hello, John!'

Piemērs

__invoke lietošana ar vairākiem parametriem:

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

Koda izpildes rezultāts:

8

Piemērs

Pārbaude, vai objekts ir izsaukams, izmantojot is_callable:

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

Koda izpildes rezultāts:

false true

Skatiet arī

  • metode __construct,
    kura ir klases konstruktors
  • metode __toString,
    kura ļauj objektam tikt attēlotam kā virknei
Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt