Frage

Ich benutze kohana und wenn Sie versuchen, Daten zu holen aus der Datenbank gibt es Klassenvariablen (wie $ user-> Vorname) als Datenbankdaten. Benutzertabelle hat eine 12 Spalten und ich hole 8 Spalten aber an dieser Stelle einiger columuns vielleicht leer ist (wie $ user-> Telefon). Wie kann ich leere Spaltennummer gefunden? (Proper Art und Weise ..)

Dank viel

War es hilfreich?

Lösung

generisch, könnten Sie versuchen, so etwas wie:

/**
 * 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;
}

Andere Tipps

i gefunden Lösung. PHP hat Magie get_object_vars Funktion:

$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);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top