PHP da Anonim Funksiyani Chaqirishdan Oldin Oʻzgaruvchi

Quyidagi kodimiz bor deb faraz qilaylik:

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

Yuqoridagi kod ishlaydi, chunki $pow o'zgaruvchisi funksiya e'lonidan oldin yozilgan. Biroq, agar biz o'zgaruvchi e'lonini funksiya chaqiruvi oldiga qo'ysak, hamma narsa ishlashni to'xtatadi:

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

Muammoni o'zgaruvchini reference (havola) orqali uzatish orqali tuzatish mumkin:

php<?php
  $func = function($num) use (&$pow)
  {
    return $num ** $pow;
  };
  
  $pow = 2;
  echo $func(4);
?>
Задание 1

Kodni rejalashtirilgan tarzda ishlashi uchun tuzating:

php<?php
  $func = function() use ($num1, $num2)
  {
    return $num1 + $num2;
  };
  
  $num1 = 2;
  $num2 = 3;
  echo $func();
?>