Domanda ActiveRecord + CodeIgniter - Restituisce un singolo valore dalla query, non in forma di matrice


Supponiamo che tu costruisci una query activerecord che restituirà sempre un singolo valore, come puoi semplicemente indirizzare quel singolo valore invece di ottenere un array in cambio? Per esempio sto usando una query ActiveRecord per restituire la SUM di una singola colonna, restituirà solo questa singola SUM, invece di dover analizzare la matrice c'è un modo per assegnare il valore come una funzione restituita uguale a quel valore di ottenere un array?


10
2018-04-20 02:29


origine


risposte:


$query = $this->db->get(); // your ActiveRecord query that will return a col called 'sum'

echo $query->row('sum');

31
2018-04-20 05:26



$output = $this->db->query("YOUR QUERY")->row()->fieldname;

O

$output = $this->db->get("TABLE NAME")->row()->fieldname;

Dove fieldname è il nome del campo di cui vuoi l'output nella tua query.


8
2018-05-09 06:19



questo non è il modo più carino. non riesco a trovare un modo per farlo con l'API del record attivo. ma ecco un one-liner per averlo.

$result = array(

    array('sum' => '23')

);

echo current( current( $result ) );

1
2018-04-20 03:47