1

我正在与 Predis 进行交易,但我不知道如何将我自己的变量传递给匿名交易函数。

$options = array();
$x = 13;
$transaction = $predis->multiExec($options, function($transaction) {
   //i need $x here
});

我试图将它添加到选项数组中,但它在匿名函数中受到保护。

我怎样才能做到这一点?

4

1 回答 1

0

我找到了解决方案。PHP 支持使用 use关键字将变量导入闭包。

所以这是有效的:

$options = array();
$x = 13;
$transaction = $predis->multiExec($options, function($transaction) use($x) {
   //now i have a copy of $x here
});

更多信息: http: //php.net/manual/en/functions.anonymous.php

于 2013-07-09T20:32:26.977 回答