354 of 410 menu

__invoke მეთოდი

მაგიური მეთოდი __invoke საშუალებას აძლევს კლასის ეგზემპლარს გამოიძახოს როგორც ფუნქცია. როდესაც ობიექტი გამოიძახება როგორც ფუნქცია, PHP ავტომატურად იძახებს ამ მეთოდს. მეთოდს შეუძლია მიიღოს პარამეტრები და დააბრუნოს მნიშვნელობა, როგორც ჩვეულებრივი ფუნქცია.

სინტაქსი

class MyClass { public function __invoke(...$args) { // რეალიზაცია } }

მაგალითი

შევქმნათ კლასი __invoke მეთოდით და გამოვიძახოთ ობიექტი როგორც ფუნქცია:

<?php class Greeter { public function __invoke($name) { return "გამარჯობა, $name!"; } } $greet = new Greeter(); echo $greet('გიორგი'); ?>

კოდის შესრულების შედეგი:

'გამარჯობა, გიორგი!'

მაგალითი

__invoke-ის გამოყენება რამდენიმე პარამეტრით:

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

კოდის შესრულების შედეგი:

8

მაგალითი

ობიექტის გამოძახების შესაძლებლობის შემოწმება is_callable-ის გამოყენებით:

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

კოდის შესრულების შედეგი:

false true

ასევე იხილეთ

  • მეთოდი __construct,
    რომელიც არის კლასის კონსტრუქტორი
  • მეთოდი __toString,
    რომელიც საშუალებას აძლევს ობიექტს იყოს წარმოდგენილი სტრიქონის სახით
ქართული
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語Қазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა