Keresés

Új hozzászólás Aktív témák

  • modder

    aktív tag

    válasz Sk8erPeter #9 üzenetére

    de a $this->_db_builder->as_object mit csinál? :D

    Egyébként már nem is tudom mit írtam, hogy csinálja a Kohana, lehet, hogy nem volt igazam. De már tudok jobb példát mondani arra a kérdésre, hogy mi ennek a gyakorlati alkalmazása, ami Sk8erPeter eredeti kérdése volt.

    Ugye az iterátort tudjuk, mire jó: egy interfészt ad egy tároló elemeinek végigléptetéséhez a belső reprezetnációtól függetlenül. A PHP által definiált iterátor interfész pedig mindezt egységessé teszi, hogy a PHP-ban használatos vezérlési szerkezetekkel is megfelelően működjön: foreach, array_map stb...

    Szóval ez az interfész bármikor jó, amikor egy iterátor jól jön:

    -- 1) Az egyik eset, amire gondolni tudok, az a fentebb említett. Például van egy gráfod, és annak a csúcsait akarod bejárni egyenként.

    -- 2) Speckó dolog, amire én gondoltam Kohanával kapcsolatban, hogy a tárolt adatok reprezentációja (típusa) nem egyezik meg azzal, amit mi elvárunk az adatstruktúra interfészétől, hogy adjon, de az iterátor a megfelelő formátumra konvertálja.

    Például a mysql result set egy stdClass (vagy amit a mysql_fetch_object visszaad) típusú objektumkat a vissza, de amit várunk a Kohanától, az a megfelelő ORM objektum minden esetben.
    Ekkor véleményem szerint mindenképpen értelmesebb dolog lazy módon konvertálni az eredmény sorokat a megfelelő ORM objektumokká olyan egyszerű megfontolások miatt például, mint hogy a fejlesztő nem biztos, hogy minden eredményben megjelenő objektumot fel akar használni.

  • Peter Kiss

    őstag

    válasz Sk8erPeter #9 üzenetére

    Melóban vagyok, a kód nincs nálam.

    ---

    Az plusz kód sem árul el semmit sem arról, hogyan fetcheli az obejktumokat. Egyébként szerintem nagyon f.s érdekes ez a kód. :DDD

Új hozzászólás Aktív témák

Hirdetés