Ich führe diesen DB-Aufruf aus, um ein mehrdimensionales Array zu erhalten. Ich versuche, die Schlüssel für jedes Array abzurufen, aber wenn ich es versuche, wird es leer oder als Array angezeigt.
$root_array = array();
$sites = $this->sites($member_id);
foreach ($sites as $site){
$records = $this->db->select('p.name as place_name, p.id as place_id,p.active as place_status')
->from('places p')
->join('members_permissions pm','pm.sites_id = p.sites_id and pm.members_id ='.$member_id)
->where('p.active', 0)
->get();
$places = $records->result_array();
$places['name'] = $site['name'];
foreach($places as $place){
$root_array[$site['name']][] = $place;
}
}
return $root_array;
Hier ist mein PHP, der sich durchläuft:
<?php foreach($places as $site): ?>
<h5><?=key($site)?></h5>
<?php foreach($site as $place): ?>
<h6><?=$place['place_name']?></h6>
<?php endforeach?>
<?php endforeach ?>
Auch wenn ich einen Test durchführe, der nur das Array ausspuckt, ist dies das Ergebnis. Was ich zu rendern versuche, ist [Philadelphia]
[Philadelphia] => Array
(
[0] => Array
(
[place_name] => XYX
[place_id] => 103200
[place_status] => 0
)
[1] => Array
(
[place_name] => YYYY
[place_id] => 232323
[place_status] => 0
)
Philadelphia
ein Schlüssel von ist. Können Sie einen Code zeigen?Wie Pekka oben sagte
Möglicherweise möchten Sie auch eine rekursive Funktion ausprobieren
quelle
Sie können auch verwenden
array_keys()
. Neuling freundlich:quelle
quelle