Когда имя переменной предваряется скобками (с параметрами или без), парсер PHP ищет функцию, имя которой совпадает со значением переменной, и вызывает ее.
<?php function hello(){ echo "Hello Nabil hasan"; } $var = "Hello"; $var(); // prints "Hello Nabil hasan" ?>
Или
<?php function add($x, $y){ echo $x+$y; } $var = "add"; $var(10,20); // 30 ?>
Анонимная функция - это функция без какого-либо определенного пользователем имени, поэтому она и называется анонимной. круто на !!! Ее также называют закрывающей или лямбда-функцией. Здесь функция хранится в переменной.
Пример :
$var=function ($arg1, $arg2) { return $val; };
<?php $multiply = function ($x, $y) { return $x * $y; }; echo $multiply(10, 20); // 200
Переменную из родительской области видимости. Поэтому для решения этой проблемы мы можем использовать закрытие. Оно может получить доступ к переменной из родительской области видимости и использовать ее в функции для получения ожидаемых результатов.
<?php $x = 5; $say = function ($y) use ($x) { $x = $x * $y ; echo $x ; }; $say(7); ?>
Функция обратного вызова - это функция, которая передается в качестве аргумента в другую функцию. Любая существующая функция может быть использована в качестве функции обратного вызова PHP. Передайте строку с именем функции в качестве аргумента в другую функцию, чтобы использовать ее в качестве функции обратного вызова.
<?php function my_callback($item) { return strlen($item); } $strings = ["apple", "orange", "banana", "coconut"]; $lengths = array_map("my_callback", $strings); print_r($lengths); ?> // same code differently <?php $strings = ["apple", "orange", "banana", "coconut"]; $lengths = array_map( function($item) { return strlen($item); } , $strings); print_r($lengths); ?>
Стрелочные функции являются более краткой версией анонимных функций. Стрелочные функции можно рассматривать как сокращенные функции, которые автоматически наследуют переменные родительской области видимости. Это преимущество стрелочных функций перед обычными и даже анонимными функциями.
Синтаксис:
$myFunction = (arg1, arg2, ...argN) => { statement(s) } or $myFunction = (arg1, arg2, ...argN) => expression
Часто fn() используется в php как стрелочная функция.
Fn(arguments) => возвращаемое выражение;
<?php $y = 1; $fn1 = fn($x) => $x + $y; $fn2 = function ($x) use ($y) { return $x + $y; }; echo ($fn1(3)); ?>
05.05.2023 14:00
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
05.05.2023 11:59
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря своим методам, они делают код очень простым для понимания и читабельным.
05.05.2023 11:57
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний, то, не теряя времени, практикуйте наш бесплатный онлайн тест 1100+ JavaScript MCQs и развивайте свои навыки и знания.
05.05.2023 09:26