Najpierw troszkę zobrazuje sytuację. Mam sobie blok kodu:

  1. //TODO: MENU
  2. try
  3. {
  4. $menus = $fcms->menu_getAll();
  5. foreach ($menus as $key => $value)
  6. {
  7. try
  8. {
  9. $menu = $fcms->menu_tree($key);
  10. $$value='<ul>';
  11. foreach ($menu as $key => $val)
  12. {
  13. if ($val['type'] == 'in-site')
  14. {
  15. $$value .= '<li><a href="' . $fcms->router_url('page', $val['href']) . '">' . $val['anchor'] . '</a></li>';
  16. }//if
  17. else
  18. {
  19. $$value .= '<li><a href="' . $val['href'] . '">' . $val['anchor'] . '</a></li>';
  20. }//else
  21. }//foreach
  22. $$value.= '</ul>';
  23. }//try
  24. catch (exception $e)
  25. {
  26. $$value = $e->getMessage();
  27. }//catch
  28. $fcms->tpl_putVar($value,$$value);
  29. }//foreach
  30. }//try
  31. catch (exception $e)
  32. {
  33. $page['content'] = $e->getMessage();
  34. }
  35.  
  36.  


Funkcja menu_getAll() zwraca tablicę w coś w takim schemacie:
  1. $menus[1] = 'nav_menu';
  2. $menus[2] = 'left_menu';
  3. //(...)
  4. $menus[mid]='n_menu'; //mid jest identyfikatorem który rozróżnia jakie linki przypisać do konkretnego menu


Funkcja menu_tree($mid) zwraca dane w podobny sposób:
  1. $menu[1]=array('mid'=>'1','anchor'=>'jakas tam nazwa', 'type' =>'in-site','href'=>'odnośnik');


Teraz pytania smile.gif
1. Osobiście nie podobają mi się te dwie pętle - mimo że przewiduje tutaj bardzo małe tablice to i tak wolałbym to jakoś prościej (jak się da) zrobić. - jest na to jakiś sposób, bo niczego konkretnego nie znalazłem.
2. Użyłem w kodzie anonimowch funkcji, ale nie wiem czy one są wystarczająco szybkie. Zastanawiałem się, aby zamiast $$value dać $zmienna[$value] (nazwa value to zawartość elementu tablicy $menus), ale wtedy muszę jeszcze jedną pętlę dać, aby przekazać zawartość do prowizorycznego parsera (tutaj funkcja putVar()wink.gif


Oraz aby nie nabijać sobie postów.
W swoim projekcie zamierzam wprowadzić proste moduły i który sposób ich ładowania będzie lepszy:
  1. (...)
  2. $func($parms);

czy raczej za pomocą funkcji w stylu call_user_func_array?

I na koniec mam zapisane w pliku ini hasło i nazwę użytkownika bez żadnego hashowania (md5 itp) czy jak przez httaccess zablokuje dostęp do pliku to będzie wystarczające zabezpieczenie, czy jednak lepszy będzie plik php o podobnej strukturze:
[php]
<?php
$user['name']='nazwa';
$user['password']='hasło w md5 lub czyms podobnym';
?>

(dodam, że w tym wypadku przechowywanie hasła w bazie odpada bo moim zdaniem nie warto robić tabeli dla jednego rekordu.

Z góry dzięki za odpowiedź smile.gif