Mam taki kod:
$role = 'guest'; function menu($role) { for($i=0;$i<count($acl->$role->children());$i++) { if($acl->$role->resource[$i]['label'] != '') { $navigation[$i]['href'] = $acl->$role->resource[$i]['name']; $navigation[$i]['label'] = $acl->$role->resource[$i]['label']; } } return $navigation; }
gdy próbuję wywołać:
$role = 'guest'; menu($role);
to dostaję komunikat:
Fatal error: Call to a member function children() on a non-object
a kiedy wywołuję samą pętlę for z funkcji:
$role = 'guest'; for($i=0;$i<count($acl->$role->children());$i++) { if($acl->$role->resource[$i]['label'] != '') { $navigation[$i]['href'] = $acl->$role->resource[$i]['name']; $navigation[$i]['label'] = $acl->$role->resource[$i]['label']; } } return $navigation;
to wszystko jest ok...
nie mam pojęcia od czego to zależy... bardzo proszę o jakąś pomoc...
Funkcja tak jakby 'opakowuje' zmienną $role, ale przecież to i tak jest cały czas string...