PHP - 向关联数组添加新的“键值”

时间:2016-01-20 19:26:20

标签: php

我正在尝试几乎所有内容都将新密钥及其值添加到结果查询中。

    $consulta = "SELECT p.id_empleado,count(p.id_empleado) as pendientes,e.nombre,e.apellidos FROM partidas_empleados p ";
    $consulta.= "inner join empleados e on p.id_empleado=e.id_empleado ";
    $consulta.= "WHERE abierta=TRUE group by id_empleado";

    $sql = $con->prepare($consulta);
    $ok = $sql->execute();
    $query = $sql->fetchAll(PDO::FETCH_ASSOC);

    for($i=0;$i<count($query);$i++){
        //echo "hola";
        $fila = $query[$i];
        $consulta = "SELECT id_partida FROM partidas_empleados where id_empleado=? ";
        $sql = $con->prepare($consulta);
        $ok = $sql->execute(array($fila['id_empleado']));
        $sub_query = $sql->fetchAll(PDO::FETCH_ASSOC);
        //echo $sub_query;
        //$fila[]= array("lista_partidas"=>$sub_query);
        $fila['lista_partidas']= $sub_query;
    }

$sub_query只是一个联合数组列表

我正在尝试将$sub_query添加到$query,并将lista_partidas作为关键字。

1 个答案:

答案 0 :(得分:0)

正如@kunruh和@jeroen所说我正在创建副本并修改该副本。

    $consulta = "SELECT p.id_empleado,count(p.id_empleado) as pendientes,e.nombre,e.apellidos FROM partidas_empleados p ";
    $consulta.= "inner join empleados e on p.id_empleado=e.id_empleado ";
    $consulta.= "WHERE abierta=TRUE group by id_empleado";

    $sql = $con->prepare($consulta);
    $ok = $sql->execute();
    $query = $sql->fetchAll(PDO::FETCH_ASSOC);

    for($i=0;$i<count($query);$i++){
        $consulta = "SELECT id_partida FROM partidas_empleados where id_empleado=? ";
        $sql = $con->prepare($consulta);
        $ok = $sql->execute(array($fila['id_empleado']));
        $sub_query = $sql->fetchAll(PDO::FETCH_ASSOC);
        $query[$i]['lista_partidas']= $sub_query;
    }