Что такое замыкание в PHP и почему оно использует идентификатор «use»?Php

Кемеровские программисты php общаются здесь
Anonymous
Что такое замыкание в PHP и почему оно использует идентификатор «use»?

Сообщение Anonymous »

Я проверял некоторые возможности PHP 5.3.0 и наткнулся на код на сайте, который выглядит довольно забавно:

Код: Выделить всё

public function getTotal($tax)
{
$total = 0.00;

$callback =
/* This line here: */
function ($quantity, $product) use ($tax, &$total)
{
$pricePerItem = constant(__CLASS__ . "::PRICE_" .
strtoupper($product));
$total += ($pricePerItem * $quantity) * ($tax + 1.0);
};

array_walk($this->products, $callback);
return round($total, 2);
}
как один из примеров анонимных функций.

Кто-нибудь знает об этом? Любая документация? И это выглядит зловеще, стоит ли его когда-нибудь использовать?

Подробнее здесь: https://stackoverflow.com/questions/106 ... identifier

Вернуться в «Php»