我正在与 Predis 进行交易,但我不知道如何将我自己的变量传递给匿名交易函数。
$options = array();
$x = 13;
$transaction = $predis->multiExec($options, function($transaction) {
//i need $x here
});
我试图将它添加到选项数组中,但它在匿名函数中受到保护。
我怎样才能做到这一点?
我找到了解决方案。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