⊗ppSpFnCb 11 of 83 menu

Callback funkce v PHP

Callback je funkce, která je předána jako parametr do jiné funkce.

Podívejme se na příklad. Předpokládejme, že máme funkci, která jako první parametr přijímá číslo, a jako druhý parametr - callback:

<?php function func($num, $calb) { } ?>

Udělejme, aby uvnitř funkce byl náš callback volán pro předané číslo:

<?php function func($num, $calb) { echo $calb($num); } ?>

Nyní se podívejme, jaké existují možnosti předání callbacku do naší funkce.

Možnost 1

Náš callback může být obyčejná funkce:

<?php function calb($num) { return $num ** 2; } ?>

V tomto případě jako callback předáme jméno naší funkce:

<?php func(3, 'calb'); ?>

Uvnitř funkce func bude náš callback volán podle jména.

Možnost 2

Náš callback může být anonymní funkce, zapsaná do proměnné:

<?php $calb = function($num) { return $num ** 2; }; ?>

V tomto případě parametrem předáme proměnnou s naší funkcí:

<?php func(3, $calb); ?>

Možnost 3

Lze předat anonymní funkci okamžitě parametrem:

<?php func(3, function($num) { return $num ** 2; }); ?>

Možnost 4

Kód lze zkrátit použitím arrow funkce:

<?php func(3, fn($num) => $num ** 2); ?>

Praktické úlohy

Je dána funkce, která parametrem přijímá pole a callback, který se aplikuje na každý prvek pole:

<?php function func($arr, $calb) { $res = []; foreach ($arr as $elem) { $res[] = $calb($elem); } return $res; } ?>

Volejte tuto funkci, jako parametr předávejte pole s čísly a callback, který umocní předané číslo na druhou.

Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικά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
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout