Hallo alle,
ich habe einen kleinen Config Auszug als Json Format.
Und versuche nun die Ebenen die aufeinander aufbauen in eine Array zu schreiben, das schlägt aber fehl.
Folgende print_r Ausgabe kommt zustande.
Die echo Ausgabe sieht aber korrekt aus, es werden alle Ebenen angezeigt.
Und hier die Methode.
Und der Methodenaufruf in einer anderen Methode.
Kann mir jemand sagen wo ich beim befüllen des Arrays den Fehler mache?
Danke für eure Hilfe Gruß der Litter
ich habe einen kleinen Config Auszug als Json Format.
Code:
"acl" : { "roles" : [ { "guest" : null }, { "user" : { "parent" : "guest" } }, { "premiumuser" : { "parent" : "user" } }, { "customer" : { "parent" : "guest" } }, { "moderator" : { "parent" : "premiumuser" } }, { "admin" : null } ] }
Folgende print_r Ausgabe kommt zustande.
Code:
Array ( [0] => moderator [1] => moderator )
Code:
guest user premiumuser moderator
PHP-Code:
protected function _mergeParents($role)
{
$parents = array();
if (null !== $role) {
foreach ($this->_aclConfig['acl']['roles'] as $key => $value) {
if (array_key_exists($role, $value)) {
$parents[] = $role;
if (null !== $value[$role]['parent']) {
$this->_mergeParents($value[$role]['parent']);
$parents[] = $role;
echo $role . '<br>';
} else {
foreach ($value as $lKey => $lValue) {
$parents[] = $lKey;
echo $lKey . '<br>';
}
}
}
}
return $parents;
}
}
PHP-Code:
$mergeParents = $this->_mergeParents($pRole);
echo '<pre>'; print_r($mergeParents); echo '</pre>';
Danke für eure Hilfe Gruß der Litter
Kommentar