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

如何用PHP实现JS filter功能?对象数组过滤代码转换

把JavaScript的filter逻辑转换为PHP代码

你完全可以用array_filter()处理这类关联数组(对应JavaScript里的对象数组),它并不局限于简单数组。下面是对应你JavaScript代码的PHP实现:

// 对应JS中的对象数组,PHP里用关联数组表示
$example = [
    ['id' => '1', 'name' => 'abc', 'type' => '123'],
    ['id' => '2', 'name' => 'def', 'type' => '345'],
    ['id' => '3', 'name' => 'ghi', 'type' => '678'],
    ['id' => '4', 'name' => 'lmn', 'type' => '901']
];

// 使用array_filter实现和JS filter一致的逻辑
$res = array_filter($example, function($x) {
    // 对应JS的Number(x.id),PHP里转为int类型
    return $x['type'] != '901' && (int)$x['id'] >= 2;
});

// 输出结果,可根据需求用print_r或var_dump
print_r($res);

这段代码的逻辑和你原本的JavaScript完全一致:

  • PHP中用关联数组替代了JavaScript的对象
  • array_filter()的回调函数里,我们同样判断两个条件:type不等于'901',且id转为整数后大于等于2
  • 最终$res会保留符合条件的数组元素,和JS里的res结果完全对应

内容的提问来源于stack exchange,提问作者Gi__ss

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 19:12:21