Odkazy: dibi | API reference

Forum: [česky] [english]

dibi fórum

tiny ‘n’ smart
database layer

Nejste přihlášen(a)

#1 před rokem

22
dibi guru
Registrovaný: 18. 1. 2010
Příspěvky: 1348

Typ proměnných po SELECT

zdravím, mám dotaz jak dibi pracuje s typem proměnných?
Mám například:

$data = dibi::query('SELECT * FROM [table]')

kde jsou sloupce id,nazev,cena
ale:

Debug::dump($data)

mi vypíše všechno jako typ string. Dělám něco blbě?

 

#2 před rokem

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

Re: Typ proměnných po SELECT

Tuším pomůže $data->detectTypes()

 

#3 před rokem

22
dibi guru
Registrovaný: 18. 1. 2010
Příspěvky: 1348

Re: Typ proměnných po SELECT

$data = dibi::query('SELECT * FROM [products]')->fetchPairs();
$data->detectTypes();
Debug::dump($data);

Způsobí chybu: Call to a member function detectTypes() on a non-object

$data = dibi::query('SELECT * FROM [products]');
$data->detectTypes();
$data->fetchPairs();
Debug::dump($data);

Proběhne sice bez chyby, ale Debug::dump($data) vypisuje celý objekt. Typy proměnných nejsou detekovány podle mě. Přitom, pokud si vytvořím pole:

$data = array('první',2,'třetí');
Debug::dump($data);

..Debug vypíše správné typy.

Editoval 22 (23. 2. 2010 10:21)

 

#4 před rokem

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

Re: Typ proměnných po SELECT

Musíš dumpovat nikoliv objekt $data, ale to, co ti metoda fetchPairs() vrátí.

 

#5 před rokem

22
dibi guru
Registrovaný: 18. 1. 2010
Příspěvky: 1348

Re: Typ proměnných po SELECT

Fajn, tak už jsem to přivedl k životu:

$res = dibi::query('SELECT [schvaleno] FROM [user] WHERE [id]=%i',$id);
$res->detectTypes();
$res = $res->fetchPairs();
Debug::dump($res);

edit: Jen by mě zajímalo, proč se to nenatypuje automaticky už v objektu po dibi::query?

Editoval 22 (23. 2. 2010 22:50)

 

Zápatí