Odkazy: dibi | API reference

Forum: [česky] [english]

dibi fórum

tiny ‘n’ smart
database layer

Nejste přihlášen(a)

#1 před 2 lety

Petr Daňa
Člen
Registrovaný: 14. 4. 2008
Příspěvky: 97

Změna syntaxe fetchAssoc()

Tak jsem náhodou zjistil, že se zcela zásadně změnila syntaxe pro fetchAssoc, a to už 6.10.2009 (proč tato důležitá změna nebyla zmíněna zde na fóru?).

A proč to bylo změněno? Co jsem tak koukal do zdrojáku, tak teď už nefunguje ‚customer_id,=,order_id‘ (viz. „dokumentace“ http://phpfashion.com/…li-dibi-0-9b ). Lze to nějak udělat (já na to nepřišel) nebo to už skutečně nejde a musím to udělat sám?

 

#2 před 2 lety

phx
Moderator
Registrovaný: 17. 4. 2008
Příspěvky: 879

Re: Změna syntaxe fetchAssoc()

Koukam do zdrojaku a melo by jit oboje:

final public function fetchAssoc($assoc)
{
        if (strpos($assoc, ',') !== FALSE) {
                return $this->oldFetchAssoc($assoc);
        }
//...

 

#3 před 2 lety

Petr Daňa
Člen
Registrovaný: 14. 4. 2008
Příspěvky: 97

Re: Změna syntaxe fetchAssoc()

No to sice ano, ale ta metoda oldFetchAssoc je označena jako deprecated, takže to beru už jakoby to nefungovalo.

 

#4 před 2 lety

David Grudl
Administrator
Registrovaný: 8. 2. 2005
Příspěvky: 5833

Re: Změna syntaxe fetchAssoc()

Syntaxe se nezměnila a stále funguje. Zároveň s ní testuju novou syntaxi, se kterou ale nejsem spokojen a proto jsem o ní zatím nic nepsal.

 

#5 před 2 lety

phx
Moderator
Registrovaný: 17. 4. 2008
Příspěvky: 879

Re: Změna syntaxe fetchAssoc()

Me se libi a prijde mi vic intuitivnejsi.

 

#6 před 2 lety

Petr Daňa
Člen
Registrovaný: 14. 4. 2008
Příspěvky: 97

Re: Změna syntaxe fetchAssoc()

David Grudl napsal(a):

Syntaxe se nezměnila a stále funguje. Zároveň s ní testuju novou syntaxi, se kterou ale nejsem spokojen a proto jsem o ní zatím nic nepsal.

OK, beru, že je to vývojová verze, ovšem pokud najednou vidím ve zdrojáku, že předchozí implementace je přejmenována s prefixem old, která je volána z původní, a navíc je tato old metoda označena jako deprecated, tak logicky předpokládám, že se zahazuje.

Bylo by teda asi vhodnější dát do komentáře metody něco jako experimental a u té old nepsat deprecated, ale taky experimental nebo tak něco.

 

#7 před rokem

zbytovsky
Člen
Registrovaný: 15. 3. 2006
Příspěvky: 14

Re: Změna syntaxe fetchAssoc()

Tu syntax jsem sice chvíli zkoumal, ale když jsem to napsal a zkusil, tak jsem užasl, že to vypadá stejně jako můj „vlastní“ zápis. Fakt moc dobré!

$res = dibi::query('SELECT id_photo,tag FROM [:p:gallery_tags]');

$tags = array();
foreach($res as $r)
        $tags[$r['id_photo']][] = $r['tag'];


$tags = $res->fetchAssoc('id_photo[]=tag');

 

Zápatí