View Categories

Select (DB_PK)

1 min read

DB_PK – SELECT #

La SELECT è l’operazione più comune del database e Anarkore la semplifica tramite i metodi:

  • pk_select() → più righe
  • pk_select_one() → singola riga

Entrambi usano prepared statement automaticamente.


SELECT base #

$db = new DB_PK();

$sql = "SELECT * FROM clients";

$rows = $db->pk_select($sql);

$rows è sempre un array di array associativi.


SELECT con WHERE #

$sql = "SELECT * FROM clients WHERE id = :id";

$row = $db->pk_select_one($sql, ['id' => 10]);

pk_select_one() restituisce:

  • una riga → array
  • nessun risultato → null

SELECT con più condizioni #

$sql = "
SELECT *
FROM clients
WHERE stato = :stato
  AND citta = :citta
ORDER BY id DESC
";

$params = [
   'stato' => 'attivo',
   'citta' => 'Roma'
];

$rows = $db->pk_select($sql, $params);

SELECT con LIKE #

$sql = "SELECT * FROM clients WHERE nome LIKE :nome";

$rows = $db->pk_select($sql, ['nome' => '%mar%']);

SELECT con LIMIT #

$sql = "SELECT * FROM clients ORDER BY id DESC LIMIT :limite";

$rows = $db->pk_select($sql, ['limite' => 20]);

SELECT complessa con JOIN #

$sql = "
SELECT c.id, c.nome, o.totale
FROM clients c
JOIN ordini o ON o.client_id = c.id
WHERE o.stato = :stato
";

$rows = $db->pk_select($sql, ['stato' => 'pagato']);

Consigli #

  • usa sempre prepared statement (Anarkore li usa di default)
  • usa pk_select_one() quando ti serve una sola riga
  • usa repository class per mantenere il codice pulito (vedi pagina “Repository Pattern”)

Powered by BetterDocs