php - 将数组元素添加到数据库查询形成的数组中

标签 php mysql arrays json

我正在构建一个电话簿应用程序,它将从我们的电话系统生成分机列表。电话系统有两个要素: “名称”和“扩展名”。我想将名字分为名字和姓氏。我已经通过以下方式完成了此操作:

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/

相关文章:

java - 当 ArrayList 位于对象内部时访问 ArrayList 方法

javascript - 从现场表格中读取没有属性或标签的数字

php - 通过 MSXML2.ServerXMLHTTP 发送 POST 数据时,是否需要输入名称?

java - 在 List 内的 String[] 中查找值并删除 String[]

php - 无法在mysql中插入多个复选框数据

php - mysql A队总进球数

javascript - 将多个数组中的值存储到一个数组中(JavaScript/Reactjs)

PHP 正则表达式组捕获

php - 如何让 webpack-dev-server 与现有应用程序一起工作?

MYSQL 选择 DISTINCT 聊天对话