cakephp {n}

Jeśli zastanawiasz się dlaczego do czego służy znacznik {n} czasem przekazywany w parametrach funkcji – służę pomocą.

Otóż jest on używany w meotdzie Set::extract() (1.1) lub Set::classicExtract() i oznacza “iteruj po kolejnych elementach”.
Możesz się tą metodą pobawić samodzielnie, załóżmy taką tablicę:

$a = array(
   array("X" => "ala"),
   array("X" => "ma"),
   array("X" => "kota"),
);

innymi słowy:

Array
(
    [0] => Array
        (
            [X] => ala
        )
    [1] => Array
        (
            [X] => ma
        )
    [2] => Array
        (
            [X] => kota
        )
)

I chcesz zwykłą listę, to możesz skorzystać z Set::classicExtract():

Set::classicExtract($a, "{n}.X")

i w efekcie masz:

Array
(
    [0] => ala
    [1] => ma
    [2] => kota
)

Dokładnie tak działał stary (1.1) Model::generatelist().

Inne ciekawe zastosowanie klasy Set znajdziesz w moim starszym poście.

Share Button

Leave a Reply

Your email address will not be published. Required fields are marked *