⊗ppSpFnAnVBC 6 of 83 menu

Zmienna przed wywołaniem funkcji anonimowej w PHP

Załóżmy, że mamy następujący kod:

<?php $pow = 2; $func = function($num) use ($pow) { return $num ** $pow; }; echo $func(4); ?>

Powyższy kod działa, ponieważ zmienna $pow jest zapisana przed deklaracją funkcji. Jednakże, jeśli umieścimy deklarację zmiennej przed wywołaniem funkcji, wszystko przestanie działać:

<?php $func = function($num) use ($pow) { return $num ** $pow; }; $pow = 2; echo $func(4); ?>

Można naprawić problem, jeśli przekażemy zmienną przez referencję:

<?php $func = function($num) use (&$pow) { return $num ** $pow; }; $pow = 2; echo $func(4); ?>

Popraw kod, aby działał w zamierzony sposób:

<?php $func = function() use ($num1, $num2) { return $num1 + $num2; }; $num1 = 2; $num2 = 3; echo $func(); ?>
Polski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wykorzystujemy pliki cookie do działania strony, analizy i personalizacji. Przetwarzanie danych odbywa się zgodnie z Polityką prywatności.
zaakceptuj wszystkie dostosuj odrzuć