php mysql_fetch_array中的implode数组

时间:2015-06-19 08:02:16

标签: php arrays implode

我无法解决这个看似简单的问题。我有以下简单的代码,我想要的是回显$ ATL5_Alert_query的结果并用逗号(,)分隔:

$ATL5_Alert_query = mysql_query("SELECT `Mobile` FROM `dbo_tech_name` WHERE `AlertLevel`= 1"); 

$dataset = array();
 while ($data = mysql_fetch_array($ATL5_Alert_query))
 {
   $dataset[] = $data;
 }
echo implode (",", $dataset);

但是,我收到了“注意:数组到字符串转换”......

1 个答案:

答案 0 :(得分:1)

在您的代码中$data也是数组,因此$dataset成为数组的数组,您无法连接它们。您应该通过以下方式获取搜索值:

while ($data = mysql_fetch_array($ATL5_Alert_query))
{
   $dataset[] = $data['Mobile'];
}

或:

while ($data = mysql_fetch_array($ATL5_Alert_query))
{
   $dataset[] = $data[0];
}

或:

while ($data = mysql_fetch_assoc($ATL5_Alert_query))
{
   $dataset[] = $data['Mobile'];
}

如果您无法更改此内容,并且已经拥有$dataset数组,则可以将其删除:

echo implode(',', array_map(function($a){
  return $a['Mobile'];
},$dataset));