Rozwój istniejących lub porzuconych...

Twoja aplikacja wymaga rozbudowy o nowe funkcjonalności, wymaga zmian w...

Aktualizacje i migracje aplikacji...

W dzisiejszych czasach kiedy technologie powstają z dnia na dzień, a obecne są...

Hosting dedykowany dla aplikacji w CakePHP

Hostingi dostępne na naszym rynku nie spełniają Twoich oczekiwań? Nakładają...

2013-08-28 ⇔ 2019-09-15

  • 100%
    POMYSŁ
  • 100.00%
    THE END

nestedList() - dzięki temu prostemu poleceniu każdą tablicę można w szybki i przyjemny sposób zamienić w listę <ul> lub <ol> mając wielowymiarową tablicę można spokojnie budować wielopoziomowe listy, używając link() masz listę z linkami lub menu lub dynamiczną mapę strony:

/*
 * w tym przypadku w zmiennej $listarray budujemy wielowymiarową tablicę,
 * tablicę która równie dobrze może być wynikiem zapytania do bazy
 */
$listarray = array(
    'jeden', 
    'dwa poziomy' => array(
        'dwa i pół',
        'dwa i trzy czwarte'
    ), 
    'trzy',
    $this->Html->link('cztery tu damy link', '#'),
    'pięć'
    );
//lista ul wykonywana jest jednym poleceniem
echo $this->Html->nestedList($listarray);

możemy jeszcze rozbudować polecenie nestedList() o dodatkowe parametry:

echo $this->Html->nestedList($listarray);
/*
 *Naszą listę można łatwo dopasować wyglądem uzywając dodatkowych parametrów,
 */
//pierwsza tablica za $listarray odpowiada za cały UL lub OL
    echo $this->Html->nestedList($listarray, array('class'=>'bullett'));
//druga tablica za $listarray odpowiada za sam LI
    echo $this->Html->nestedList($listarray, array('class'=>'bullett'), array('class'=>'blue'));
//trzeci tym razem string za $listarray odpowiada za to czy ma być to UL czy OL
    echo $this->Html->nestedList($listarray, array('class'=>'bullett'), array('class'=>'blue'), 'ol');

Prawda że proste? :)

$this->Html->nestedList($listarray, array('class'=>'bullett'))
$this->Html->nestedList($listarray, array(), array(), 'ol')
  1. jeden
  2. dwa poziomy
    1. dwa i pół
    2. dwa i trzy czwarte
  3. trzy
  4. cztery tu damy link
  5. pięć

(~BN) © www.cakephp.com.pl

przewiń do góry
Przetwarzanie... prosimy o cierpliwość.

Loading
(default) 12 queries took 1 ms
NrQueryErrorAffectedNum. rowsTook (ms)
1SELECT `Site`.`id`, `Site`.`type`, `Site`.`name`, `Site`.`slug`, `Site`.`hints`, `Site`.`title`, `Site`.`desc`, `Site`.`info` FROM `sql_cakephp`.`sites` AS `Site` WHERE `Site`.`slug` = 'cakephp-moje-przyklady' LIMIT 1110
2SELECT COUNT(*) AS `count` FROM `sql_cakephp`.`sites` AS `Site` WHERE `Site`.`id` IN (5, 2, 'moje Repo', 'cakephp-moje-przyklady', 7396, 'Przykłady uzycia kodu i rozwiązań w CakePHP 2+', 'Na tej stronie będę umieszczał kod po który muszę często sięgać i wklejać go w robione projekty, najczęściej poszukuję go w poprzednich pracach', '<p style=\"margin-bottom: 0cm;\">Na tej stronie będę umieszczał kod po kt&oacute;ry muszę często sięgać i wklejać go w robione projekty, najczęściej poszukuję go w poprzednich pracach co często mnie irytuje, zwłaszcza że to bardzo proste rozwiązania &ndash; ale być może skoncentrowanie ich w jednym miejscu i w formie kt&oacute;ra może przydać się początkującym CakePHP\'owcom &ndash; okaże się dla mnie doskonałym rozwiązaniem, będę starał się opisywać te kody tak aby przypadkowy poszukiwacz rozwiązań m&oacute;gł się jakoś w tym odnaleźć. Jakikolwiek podział na Widoki, Controllery czy Modele zrobię w miarę jak będzie przybywało rozwiązań i będę musiał je grupować.</p>')110
3SELECT `Article`.`id`, `Article`.`site_id`, `Article`.`showdate`, `Article`.`title`, `Article`.`active`, `Article`.`author`, `Article`.`slug`, `Article`.`hints`, `Article`.`content`, `Article`.`code`, `Article`.`idea`, `Article`.`database`, `Article`.`boulid`, `Article`.`backend`, `Article`.`frontend`, `Article`.`layout`, `Article`.`created`, `Article`.`modified`, `Site`.`id`, `Site`.`type`, `Site`.`name`, `Site`.`slug`, `Site`.`hints`, `Site`.`title`, `Site`.`desc`, `Site`.`info` FROM `sql_cakephp`.`articles` AS `Article` LEFT JOIN `sql_cakephp`.`sites` AS `Site` ON (`Article`.`site_id` = `Site`.`id`) WHERE `Article`.`slug` = 'this-Html-nestedList-w-CakePHP-co-za-wygoda' AND `Article`.`site_id` = 5 AND `Article`.`active` = 1 ORDER BY `created` DESC110
4SELECT `Photo`.`id`, `ArticlesPhoto`.`photo_id`, `ArticlesPhoto`.`article_id` FROM `sql_cakephp`.`photos` AS `Photo` JOIN `sql_cakephp`.`articles_photos` AS `ArticlesPhoto` ON (`ArticlesPhoto`.`article_id` = 180 AND `ArticlesPhoto`.`photo_id` = `Photo`.`id`) 110
5SELECT `Addfile`.`id`, `Addfile`.`title`, `Addfile`.`name`, `Addfile`.`hints`, `Addfile`.`size`, `Addfile`.`type`, `AddfilesArticle`.`addfile_id`, `AddfilesArticle`.`article_id` FROM `sql_cakephp`.`addfiles` AS `Addfile` JOIN `sql_cakephp`.`addfiles_articles` AS `AddfilesArticle` ON (`AddfilesArticle`.`article_id` = 180 AND `AddfilesArticle`.`addfile_id` = `Addfile`.`id`) 000
6SELECT `Article`.`slug`, `Article`.`title`, `Site`.`id`, `Site`.`name`, `Site`.`slug` FROM `sql_cakephp`.`articles` AS `Article` LEFT JOIN `sql_cakephp`.`sites` AS `Site` ON (`Article`.`site_id` = `Site`.`id`) WHERE `Article`.`site_id` = 5 AND `Article`.`active` = 1 ORDER BY `created` ASC440
7SELECT `Article`.`id`, `Article`.`site_id`, `Article`.`showdate`, `Article`.`title`, `Article`.`active`, `Article`.`author`, `Article`.`slug`, `Article`.`hints`, `Article`.`content`, `Article`.`code`, `Article`.`idea`, `Article`.`database`, `Article`.`boulid`, `Article`.`backend`, `Article`.`frontend`, `Article`.`layout`, `Article`.`created`, `Article`.`modified`, `Site`.`id`, `Site`.`type`, `Site`.`name`, `Site`.`slug`, `Site`.`hints`, `Site`.`title`, `Site`.`desc`, `Site`.`info` FROM `sql_cakephp`.`articles` AS `Article` LEFT JOIN `sql_cakephp`.`sites` AS `Site` ON (`Article`.`site_id` = `Site`.`id`) WHERE `site_id` = 3 AND `active` = 1 ORDER BY rand() ASC LIMIT 3331
8SELECT `Photo`.`id`, `ArticlesPhoto`.`photo_id`, `ArticlesPhoto`.`article_id` FROM `sql_cakephp`.`photos` AS `Photo` JOIN `sql_cakephp`.`articles_photos` AS `ArticlesPhoto` ON (`ArticlesPhoto`.`article_id` IN (183, 175, 184) AND `ArticlesPhoto`.`photo_id` = `Photo`.`id`) 330
9SELECT `Addfile`.`id`, `Addfile`.`title`, `Addfile`.`name`, `Addfile`.`hints`, `Addfile`.`size`, `Addfile`.`type`, `AddfilesArticle`.`addfile_id`, `AddfilesArticle`.`article_id` FROM `sql_cakephp`.`addfiles` AS `Addfile` JOIN `sql_cakephp`.`addfiles_articles` AS `AddfilesArticle` ON (`AddfilesArticle`.`article_id` IN (183, 175, 184) AND `AddfilesArticle`.`addfile_id` = `Addfile`.`id`) 000
10UPDATE `sql_cakephp`.`articles` AS `Article` LEFT JOIN `sql_cakephp`.`sites` AS `Site` ON (`Article`.`site_id` = `Site`.`id`) SET `Article`.`hints` = Article.hints + 1 WHERE `Article`.`id` = 180110
11SELECT `Site`.`name`, `Site`.`slug` FROM `sql_cakephp`.`sites` AS `Site` WHERE 1 = 1660
12SELECT `Sitesetting`.`id`, `Sitesetting`.`top`, `Sitesetting`.`place`, `Sitesetting`.`adress`, `Sitesetting`.`worktime`, `Sitesetting`.`phone`, `Sitesetting`.`mobile`, `Sitesetting`.`email`, `Sitesetting`.`regon`, `Sitesetting`.`licencja`, `Sitesetting`.`nip` FROM `sql_cakephp`.`sitesettings` AS `Sitesetting` WHERE 1 = 1 LIMIT 1110