Erstellen Sie aus einem CodeIgniter-Abfrageergebnis ein gruppiertes mehrdimensionales Array mit verschachtelten UnterarrPhp

PHP-Programmierer chatten hier
Anonymous
 Erstellen Sie aus einem CodeIgniter-Abfrageergebnis ein gruppiertes mehrdimensionales Array mit verschachtelten Unterarr

Post by Anonymous »

Mit dieser Abfrage erhalte ich als Ergebnis dieses Array, aber einige Zeilen wiederholen sich mit einigen unterschiedlichen Spalten. Ich möchte diese unterschiedlichen Spalten in ein separates Array als mehrdimensionales Array des übergeordneten Arrays übernehmen. Ich habe versucht, es mit einer MySQL-group_by-Distinct-Klausel zu tun, aber es ist mir nicht gelungen. Ich denke, der beste Weg ist, es mit PHP zu erstellen.

Code: Select all

$query = "
SELECT
a.emp_nmbr, a.emp_frstNm,
a.emp_lstNm, a.emp_lclFrn,
b.emp_dsgntn, b.emp_dprtmnt,
b.emp_allwncs, b.emp_bscSlry,
b.emp_sts, c.emp_lvsCtgry,
c.emp_tknFrm, c.emp_tknTo
FROM
employee a
LEFT JOIN
emp_details b
ON a.emp_nmbr = b.emp_nmbr
LEFT JOIN
leaves_details c
ON a.emp_nmbr = c.emp_nmbr
WHERE
emp_lclFrn = 0
LIMIT
$page, $perPage
";
CodeIgniter-Modellfunktion zum Ausführen der Abfrage:

Code: Select all

function count_and_data($query)
{
$query = $this->db->query($query);
$result = $query->result();
$count = $query->num_rows();
$data['count'] = $count;
$data['rows'] = $result;
return $data;
}
Das Ergebnisarray, das ich erhalte

Code: Select all

Array
(
[count] => 16
[rows] => Array
(
[0] => stdClass Object
(
[emp_nmbr] => ophl3
[emp_frstNm] => aaaaaaaa
[emp_lstNm] => saaa
[emp_lclFrn] => 0
[emp_dsgntn] => test
[emp_dprtmnt] => 0
[emp_allwncs] => a:2:{i:0;a:2:{s:7:"alwncNm";s:4:"food";s:9:"alwncAmnt";s:3:"456";}i:1;a:2:{s:7:"alwncNm";s:0:"";s:9:"alwncAmnt";s:0:"";}}
[emp_bscSlry] => 2555
[emp_sts] => 4
[emp_lvsCtgry] => 1
[emp_tknFrm] => 20141222
[emp_tknTo] => 20141223
)

[1] => stdClass Object
(
[emp_nmbr] => ophl3
[emp_frstNm] => aaaaaaaa
[emp_lstNm] => saaa
[emp_lclFrn] => 0
[emp_dsgntn] => test
[emp_dprtmnt] => 0
[emp_allwncs] => a:2:{i:0;a:2:{s:7:"alwncNm";s:4:"food";s:9:"alwncAmnt";s:3:"456";}i:1;a:2:{s:7:"alwncNm";s:0:"";s:9:"alwncAmnt";s:0:"";}}
[emp_bscSlry] => 2555
[emp_sts] => 4
[emp_lvsCtgry] => 3
[emp_tknFrm] => 20141223
[emp_tknTo] => 20141224
)

[2] => stdClass Object
(
[emp_nmbr] => ophl3
[emp_frstNm] => aaaaaaaa
[emp_lstNm] => saaa
[emp_lclFrn] => 0
[emp_dsgntn] => test
[emp_dprtmnt] => 0
[emp_allwncs] => a:2:{i:0;a:2:{s:7:"alwncNm";s:4:"food";s:9:"alwncAmnt";s:3:"456";}i:1;a:2:{s:7:"alwncNm";s:0:"";s:9:"alwncAmnt";s:0:"";}}
[emp_bscSlry] => 2555
[emp_sts] => 4
[emp_lvsCtgry] => 4
[emp_tknFrm] => 20141224
[emp_tknTo] => 20141231
)

[3] => stdClass Object
(
[emp_nmbr] => ophl14
[emp_frstNm] => qqq
[emp_lstNm] => qqqq
[emp_lclFrn] => 0
[emp_dsgntn] => test
[emp_dprtmnt] => 0
[emp_allwncs] => a:2:{i:0;a:2:{s:7:"alwncNm";s:5:"qqqqq";s:9:"alwncAmnt";s:4:"2222";}i:1;a:2:{s:7:"alwncNm";s:0:"";s:9:"alwncAmnt";s:0:"";}}
[emp_bscSlry] => 2222
[emp_sts] => 3
[emp_lvsCtgry] =>
[emp_tknFrm] =>
[emp_tknTo] =>
)

[4] => stdClass Object
(
[emp_nmbr] => ophl1
[emp_frstNm] => yas
[emp_lstNm] => yas
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvsCtgry] =>
[emp_tknFrm] =>
[emp_tknTo] =>
)

[5] => stdClass Object
(
[emp_nmbr] => ophl2
[emp_frstNm] => test
[emp_lstNm] => test
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvsCtgry] =>
[emp_tknFrm] =>
[emp_tknTo] =>
)

[6] => stdClass Object
(
[emp_nmbr] => ophl4
[emp_frstNm] => yaa
[emp_lstNm] => yaaa
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvsCtgry] =>
[emp_tknFrm] =>
[emp_tknTo] =>
)

[7] => stdClass Object
(
[emp_nmbr] => ophl5
[emp_frstNm] => sdfds
[emp_lstNm] => sdfsdf
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvsCtgry] =>
[emp_tknFrm] =>
[emp_tknTo] =>
)

[8] => stdClass Object
(
[emp_nmbr] => ophl6
[emp_frstNm] => fsdfsdf
[emp_lstNm] => sfsdfsdf
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvsCtgry] =>
[emp_tknFrm] =>
[emp_tknTo] =>
)

[9] => stdClass Object
(
[emp_nmbr] => ophl7
[emp_frstNm] => fsdfsdf
[emp_lstNm] => sfsdfsdf
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvsCtgry] =>
[emp_tknFrm] =>
[emp_tknTo] =>
)

[10] => stdClass Object
(
[emp_nmbr] => ophl8
[emp_frstNm] => yyyyyyyyy
[emp_lstNm] => yyyyyyy
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvsCtgry] =>
[emp_tknFrm] =>
[emp_tknTo] =>
)

[11] => stdClass Object
(
[emp_nmbr] => ophl9
[emp_frstNm] => sfdsf
[emp_lstNm] => sfdsdfsdf
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvsCtgry] =>
[emp_tknFrm] =>
[emp_tknTo] =>
)

[12] =>  stdClass Object
(
[emp_nmbr] => ophl10
[emp_frstNm] => test
[emp_lstNm] => test
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvsCtgry] =>
[emp_tknFrm] =>
[emp_tknTo] =>
)

[13] => stdClass Object
(
[emp_nmbr] => ophl11
[emp_frstNm] => test
[emp_lstNm] => test
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvsCtgry] =>
[emp_tknFrm] =>
[emp_tknTo] =>
)

[14] => stdClass Object
(
[emp_nmbr] => ophl12
[emp_frstNm] => ssss
[emp_lstNm] => sss
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvsCtgry] =>
[emp_tknFrm] =>
[emp_tknTo] =>
)

[15] => stdClass Object
(
[emp_nmbr] => ophl13
[emp_frstNm] => yaas
[emp_lstNm] => yaas
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvsCtgry] =>
[emp_tknFrm] =>
[emp_tknTo] =>
)

)

)
Was ich erwarte, ist

Code: Select all

Array
(
[count] => 16
[rows] => Array
(
[0] => stdClass Object
(
[emp_nmbr] => ophl3
[emp_frstNm] => aaaaaaaa
[emp_lstNm] => saaa
[emp_lclFrn] => 0
[emp_dsgntn] => test
[emp_dprtmnt] => 0
[emp_allwncs] => a:2:{i:0;a:2:{s:7:"alwncNm";s:4:"food";s:9:"alwncAmnt";s:3:"456";}i:1;a:2:{s:7:"alwncNm";s:0:"";s:9:"alwncAmnt";s:0:"";}}
[emp_bscSlry] => 2555
[emp_sts] => 4
[emp_lvData]=>array(
array[0](
[emp_lvsCtgry] => 1
[emp_tknFrm] => 20141222
[emp_tknTo] => 20141223
)
array[1](
[emp_lvsCtgry] => 3
[emp_tknFrm] => 20141223
[emp_tknTo] => 20141224
)
array[2](
[emp_lvsCtgry] => 4
[emp_tknFrm] => 20141224
[emp_tknTo] => 20141231
)

)

[3] => stdClass Object
(
[emp_nmbr] => ophl14
[emp_frstNm] => qqq
[emp_lstNm] => qqqq
[emp_lclFrn] => 0
[emp_dsgntn] => test
[emp_dprtmnt] => 0
[emp_allwncs] => a:2:{i:0;a:2:{s:7:"alwncNm";s:5:"qqqqq";s:9:"alwncAmnt";s:4:"2222";}i:1;a:2:{s:7:"alwncNm";s:0:"";s:9:"alwncAmnt";s:0:"";}}
[emp_bscSlry] =>  2222
[emp_sts] => 3
[emp_lvData]=>array(
array[0](
[emp_lvsCtgry] => 1
[emp_tknFrm] => 20141222
[emp_tknTo] => 20141223
)
)
)

[4] => stdClass Object
(
[emp_nmbr] => ophl1
[emp_frstNm] => yas
[emp_lstNm] => yas
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvData]=>array(
array[0](
[emp_lvsCtgry] => 1
[emp_tknFrm] => 20141222
[emp_tknTo] => 20141223
)
)
)

[5] => stdClass Object
(
[emp_nmbr] => ophl2
[emp_frstNm] => test
[emp_lstNm] => test
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvData]=>array(
array[0](
[emp_lvsCtgry] => 1
[emp_tknFrm] => 20141222
[emp_tknTo] => 20141223
)
)
)

[6] => stdClass Object
(
[emp_nmbr] => ophl4
[emp_frstNm] => yaa
[emp_lstNm] => yaaa
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvData]=>array(
array[0](
[emp_lvsCtgry] => 1
[emp_tknFrm] => 20141222
[emp_tknTo] => 20141223
)
)
)

[7] => stdClass Object
(
[emp_nmbr] => ophl5
[emp_frstNm] => sdfds
[emp_lstNm] => sdfsdf
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvData]=>array(
array[0](
[emp_lvsCtgry] => 1
[emp_tknFrm] => 20141222
[emp_tknTo] => 20141223
)
)
)

[8] => stdClass Object
(
[emp_nmbr] => ophl6
[emp_frstNm] => fsdfsdf
[emp_lstNm] => sfsdfsdf
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvData]=>array(
array[0](
[emp_lvsCtgry] => 1
[emp_tknFrm] => 20141222
[emp_tknTo] => 20141223
)
)
)

[9] => stdClass Object
(
[emp_nmbr] => ophl7
[emp_frstNm] => fsdfsdf
[emp_lstNm] => sfsdfsdf
[emp_lclFrn] =>  0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvData]=>array(
array[0](
[emp_lvsCtgry] => 1
[emp_tknFrm] => 20141222
[emp_tknTo] => 20141223
)
)
)

[10] => stdClass Object
(
[emp_nmbr] => ophl8
[emp_frstNm] => yyyyyyyyy
[emp_lstNm] => yyyyyyy
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvData]=>array(
array[0](
[emp_lvsCtgry] => 1
[emp_tknFrm] => 20141222
[emp_tknTo] => 20141223
)
)
)

[11] => stdClass Object
(
[emp_nmbr] => ophl9
[emp_frstNm] => sfdsf
[emp_lstNm] => sfdsdfsdf
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvData]=>array(
array[0](
[emp_lvsCtgry] => 1
[emp_tknFrm] => 20141222
[emp_tknTo] => 20141223
)
)
)

[12] => stdClass Object
(
[emp_nmbr] => ophl10
[emp_frstNm] => test
[emp_lstNm] => test
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvData]=>array(
array[0](
[emp_lvsCtgry] => 1
[emp_tknFrm] => 20141222
[emp_tknTo] => 20141223
)
)
)

[13] => stdClass Object
(
[emp_nmbr] => ophl11
[emp_frstNm] => test
[emp_lstNm] => test
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvData]=>array(
array[0](
[emp_lvsCtgry] => 1
[emp_tknFrm] => 20141222
[emp_tknTo] => 20141223
)
)
)

[14] => stdClass Object
(
[emp_nmbr] => ophl12
[emp_frstNm] => ssss
[emp_lstNm] => sss
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvData]=>array(
array[0](
[emp_lvsCtgry] => 1
[emp_tknFrm] => 20141222
[emp_tknTo] => 20141223
)
)
)

[15] =>  stdClass Object
(
[emp_nmbr] => ophl13
[emp_frstNm] => yaas
[emp_lstNm] => yaas
[emp_lclFrn] => 0
[emp_dsgntn] =>
[emp_dprtmnt] =>
[emp_allwncs] =>
[emp_bscSlry] =>
[emp_sts] =>
[emp_lvData]=>array(
array[0](
[emp_lvsCtgry] => 1
[emp_tknFrm] => 20141222
[emp_tknTo] => 20141223
)
)
)

)

)

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post