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

PHP如何拆分逗号分隔name值并遍历查询对应ID拼接输出

问题原因

  • 你混淆了implode()和explode()的功能:implode()用于将数组拼接为字符串,explode()用于将字符串按分隔符拆分为数组,你的$name['name']本身是逗号分隔的字符串,需要用explode()拆成数组才能遍历
  • 拆分后数组的每一项就是单个name字符串,不需要再取$row['name']下标

修正后代码

$name = $this->UserSkills->where('id', session()->get('id'))->first();
// 将逗号分隔的name字符串拆分为数组
$nameArr = explode(",", $name['name']);

$setname = [];
foreach($nameArr as $row) {
    // 直接传单个name值查询ID
    $setname[] = $this->checkName->getIDbyName($row);
}

// 将查询到的ID数组拼接为逗号分隔的字符串
$setname = implode(",", $setname);

$data['id_name'] = $setname;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 05:45:10