代码之家  ›  专栏  ›  技术社区  ›  SmartGuyz

将oneliner键入PHP

  •  -4
  • SmartGuyz  · 技术社区  · 8 年前

    我正在将一段代码从TypeScript翻译成PHP,目前进展顺利。 在TypeScript中,有一些单行代码我需要翻译,但我似乎没有正确理解。

    TypeScript代码为:

    const InContent: string = subclass.Ins
            .map((In: In) => In.OutId + In.OutIndex)
            .reduce((a, b) => a + b, '');
    

    现在我知道PHP 7有如下函数 array_map , array_reduce array_column . 我认为也可以在PHP中将这个TypeScript oneliner创建为一个oneliner,但我不知道如何创建。

    1 回复  |  直到 8 年前
        1
  •  1
  •   deceze    8 年前

    此代码显示为添加 OutId OutIndex 一起(我只能假设这是一个数学加法,而不是字符串串联),然后将所有这些连接在一起,形成一个字符串。因此:

    join(array_map(function ($in) { return $in->outId + $in->outIndex; }, $ins))
    // I'm assuming `$in` is an object here
    

    即使在JS中 reduce 将更加简洁 map(...).join() .

    推荐文章