尝试从多维数组中提取值以在SQL语句中使用

时间:2014-02-21 04:25:41

标签: php mysql codeigniter

我有一个数组,当var_dump看起来像这样:

array(2) { [0]=> array(1) { ["unit_id"]=> string(1) "1" } [1]=> array(1) { ["unit_id"]=> string(1) "3" } }

我需要将每个值(1,3)提取到我可以将它们放在SQL WHERE IN子句中的位置

到目前为止,我已经找到了php implode函数,但我不知道如何在多维数组上执行此操作。

请帮助:(

2 个答案:

答案 0 :(得分:1)

试试这段代码:

$arr = array(                       // your array
               array("unit_id"=>1),
               array("unit_id"=>3)
            );

$str = implode(',', array_map(function($el){ return $el['unit_id']; }, $arr));

答案 1 :(得分:0)

如果您使用的是php版本> = 5.5,请尝试:

echo implode(",",array_column($arr,'unit_id'));

如果没有,请尝试:

$res = array();   
foreach($arr as $ar){
    $res[] = $ar['unit_id'];
}

   echo implode(",",$res);

请参阅演示here