Domanda

Uso kohana e quando provi a recuperare dati dal database restituisce variabili di classe (come $ user- > firstname) come dati di database. La tabella degli utenti ha 12 colonne e ne ottengo 8, ma a questo punto alcune colonne potrebbero essere vuote (come $ user- > phone). Come posso trovare il numero di colonna vuoto? (Modo corretto ..)

Grazie mille

È stato utile?

Soluzione

In generale, potresti provare qualcosa del tipo:

/**
 * Count number of empty data members in a row object.
 */
function countEmpty($row){
  $fields = array_keys($row->as_array());
  $cnt = 0;
  foreach($fields as $f){
    if (empty($row->$f)) $cnt++;
  }
  return $cnt;
}

Altri suggerimenti

ho trovato la soluzione. PHP ha la funzione get_object_vars magica:

$data = User_Model::factory()->read(
    array('id' => $user_id),
    'firstname, lastname, birthday, country, mobilephone, landphone, address'
);

$filled_data = 0;
foreach(get_object_vars($data) as $v)
{
    if ($v != '') $filled_data++;
}
return round($filled_data / count(get_object_vars($data)) * 100);
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top