Byla vydána verze 11.0.0 knihovny libvirt (Wikipedie) zastřešující různé virtualizační technologie a vytvářející jednotné rozhraní pro správu virtuálních strojů. Současně byl ve verzi 11.0.0 vydán související modul pro Python libvirt-python. Přehled novinek v poznámkách k vydání.
Byla vydána nová verze 3.4.0 nástroje pro inkrementální kopírování souborů rsync (Wikipedie). Přehled oprav a vylepšení v souboru NEWS. Řešeno je 6 zranitelností.
V srpnu loňského roku byla vyhlášena RP2350 Hacking Challenge aneb oficiální výzva Raspberry Pi na prolomení bezpečnosti mikrokontroléru RP2350. Povedlo se. Včera byli představeni čtyři vítězové a jejich techniky.
Na čem aktuálně pracují vývojáři open source operačního systému Haiku (Wikipedie)? Byl publikován přehled vývoje za prosinec 2024. Vypíchnuto je začlenění webového prohlížeče Iceweasel, tj. alternativního sestavení Firefoxu.
Tetris a DOOM běžící v pdf. Proč a jak v příspěvku na blogu.
Společnost Oracle představila sadu nástrojů a skriptů pro sběr a analýzu dat o stavu linuxových systémů a jejich ladění pod společným názvem Oracle Linux Enhanced Diagnostics (OLED). K dispozici pod licencí GPLv2.
OpenZFS (Wikipedie), tj. implementace souborového systému ZFS pro Linux a FreeBSD, byl vydán ve verzi 2.3.0. Přináší RAIDZ Expansion, Fast Dedup, Direct IO, JSON a Long names.
Společnost PINE64 stojící za telefony PinePhone nebo notebooky Pinebook publikovala na svém blogu lednový souhrn novinek.
Baví vás bastlení, fyzika, IT a nebo prostě cokoliv technického? Proseděli jste celé Vánoce v záři obrazovky počítače a nebo jste o tom alespoň snili? Chcete se pochlubit technickými vánočními dárky? Pak doražte na Virtuální Bastlírnu - online pokec (nejen) techniků a bastlířů!
… více »Desktopové prostředí Enlightenment bylo vydáno ve verzi 0.27.0, provázejí ho knihovny EFL 1.28. Jde o převážně opravné vydání opět po roce.
function ... () { $obj = false ; $sql = "SELECT * FROM site ORDER BY id ASC"; $stmt = $this->pdo->prepare($sql); $stmt->execute(); if ($stmt->rowCount() != 0){ $obj = $stmt->fetch( \ PDO :: FETCH_OBJ); } return $obj ; }Pomůže prosím někdo ? Děkuji
Řešení dotazu:
function ... () { $sql = "SELECT * FROM site ORDER BY id ASC"; $stmt = $this->pdo->prepare($sql); $stmt->execute(); return $stmt->fetchAll(\PDO::FETCH_OBJ); }
PDO::FETCH_GROUP
, viz fetchAll(). Jako první sloupec v SELECTu musí být ten klíčový.
$obj = $stmt->fetchAll( \ PDO :: FETCH_GROUP);ale zase vkládá čísla mezi každý sloupec Pomůžeš prosím ještě ? Díky
$data = $stmt->fetchAll(PDO::FETCH_GROUP | PDO::FETCH_UNIQUE);
fetchAll() v principu nemůže vracet objekt, ale jen kolekci. To jen pro upřesnění.Aha a co tedy použít místo fetchAll().
***********
použití$data = $stmt->fetchAll(PDO::FETCH_GROUP | PDO::FETCH_UNIQUE);
$obj = $stmt->fetchAll(\PDO::FETCH_GROUP);nebo
$obj = $stmt->fetchAll(\PDO::FETCH_GROUP | \PDO::FETCH_UNIQUE);je vcelku jedno, stejně mezi každý název sloupce vkládá číselné pořadí sloupce i s jeho hodnotou :(
Nedává. Podívej se pořádně. Jako klíč je použita hodnota z prvního sloupce. Schválně jsem si to vyzkoušel, abych si ověřil, že nekecám:$obj = $stmt->fetchAll(\PDO::FETCH_GROUP | \PDO::FETCH_UNIQUE);je vcelku jedno, stejně mezi každý název sloupce vkládá číselné pořadí sloupce i s jeho hodnotou :(
<?php $db = new \PDO('mysql:host=localhost;dbname=test;charset=UTF8'); $select = $db->prepare('SELECT name, id, author_id FROM book'); $select->execute(); $data = $select->fetchAll(\PDO::FETCH_GROUP | \PDO::FETCH_UNIQUE | \PDO::FETCH_ASSOC); print_r($data);Výsledek:
Array ( [Babička] => Array ( [id] => 1 [author_id] => 1 ) [Divá Bára] => Array ( [id] => 2 [author_id] => 1 ) [Válka s mloky] => Array ( [id] => 4 [author_id] => 2 ) )Kde vidíš pořadí sloupce i s jeho hodnotou?
FETCH_ASSOC
použít FETCH_OBJ
, abys měl kolekci objektů.
Kde vidíš pořadí sloupce i s jeho hodnotou?Díky, teď už nikde, jelikož se taky tohle
$data = $select->fetchAll(\PDO::FETCH_GROUP | \PDO::FETCH_UNIQUE | \PDO::FETCH_ASSOC);vypisuje jinak než tohle..
$data = $select->fetchAll(\PDO::FETCH_GROUP | \PDO::FETCH_UNIQUE);A lépe ta data získat nepůjdou, jo? Abych mohl použít
echo $data->babicka->author_id ;
<?php // ... $data = (object) $select->fetchAll(\PDO::FETCH_GROUP | \PDO::FETCH_UNIQUE | \PDO::FETCH_OBJ); echo $data->Babička->author_id;Jen to není příliš rozumné řešení, protože to má několik nevýhod - například se to nedá procházet přes foreach. Blbě se řeší neexistující klíče. Kolekce je v daném případě prostě výhodnější.
FETCH_ARRAY
nebo FETCH_ASSOC
a kdy FETCH_OBJ
. PDO je hodně chytrá třída, se kterou se dají dělat kouzla. Taková, že se z ORM stanou jen nesmyslné kusy kódu.
Tiskni Sdílej: