我正在构建一个电话簿应用程序,它将从我们的电话系统生成分机列表。电话系统有两个要素: “名称”和“扩展名”。我想将名字分为名字和姓氏。我已经通过以下方式完成了此操作:
list($ln,$fn) = explode(' ',$contact[1],2);
问题是,我想将 $ln 和 $fn 添加到从数据库查询形成的数组中。这样做的原因是因为我正在从数组创建一个 json。我已尝试以下操作,但似乎没有将 fname 和 lname 元素添加到数组中:
$contact_array = array();
while ($contact=mysql_fetch_array($QUERYresult))
{
if(preg_match('/\s/',$contact[1]))
{
//$count++;
$contact_array[] = $contact;
list($ln,$fn) = explode(' ',$contact[1],2);
$contact['fname'] = $fn;
$contact['lname'] = $ln;
}
fwrite($myJSON, json_encode($contact_array));
该数组的输出仅返回数据库查询,如下所示:
Array
(
[0] => Array
(
[extension] => 1000
[name] => Extension 1
)
[1] => Array
(
[extension] => 1001
[name] => Extension 2
)
)
最佳答案
问题似乎主要是您在将 $contact 的原始版本传递到 $contact_array 后添加值。因此,您添加的额外值不包含在其中。尝试将这些行移至 $contact_array[] = $contact;
:
if(preg_match('/\s/',$contact[1]))
{
//$count++;
list($ln,$fn) = explode(' ',$contact[1],2);
$contact['fname'] = $fn;
$contact['lname'] = $ln;
$contact_array[] = $contact;
}
关于php - 将数组元素添加到数据库查询形成的数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46079717/