354 of 410 menu

Metode __invoke

Metode ajaib __invoke memungkinkan instance kelas untuk dipanggil seperti fungsi. Ketika objek dipanggil seperti fungsi, PHP secara otomatis memanggil metode ini. Metode dapat menerima parameter dan mengembalikan nilai, seperti fungsi biasa.

Sintaks

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

Contoh

Mari buat kelas dengan metode __invoke dan panggil objek seperti fungsi:

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

Hasil eksekusi kode:

'Hello, John!'

Contoh

Penggunaan __invoke dengan beberapa parameter:

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

Hasil eksekusi kode:

8

Contoh

Memeriksa apakah objek dapat dipanggil menggunakan is_callable:

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

Hasil eksekusi kode:

false true

Lihat Juga

  • metode __construct,
    yang merupakan konstruktor kelas
  • metode __toString,
    yang memungkinkan objek untuk direpresentasikan sebagai string
Indonesia
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan cookie untuk operasi situs, analitik, dan personalisasi. Pemrosesan data dilakukan sesuai dengan Kebijakan Privasi.
terima semua atur tolak