You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel旧版tap函数工作原理及自定义实现与原版的差异疑问

Laravel旧版tap函数工作原理及自定义实现与原版的差异疑问

我一直搞不懂Laravel旧版的tap函数到底是怎么工作的,尤其是这段代码:

function tap($value, $callback)
{
    $callback($value);

    return $value;
}

我实在想不通$callback($value);这一行——我们并没有把回调的结果存到另一个变量里,这是为什么?而且我们返回的是修改后的值,但不把$callback($value);的结果存起来的话,这怎么可能实现呢?

我自己试了写这样的代码:

function myTapFunction($value)
{
    tempFn($value);

    return $value;
}

function tempFn($value)
{
    return $value + 5;
}

var_dump( myTapFunction(5) );

但它返回的是5而不是10。原版函数和我的实现到底有什么区别?

备注:内容来源于stack exchange,提问作者IamMe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 10:08:08