Sayısı boş değişkenler için doğru yolu

2 Cevap php

Ben Kohana kullanmak ve veritabanından veri almak için çalıştığınızda veritabanı veri olarak ($ ​​user-> Isim gibi) sınıf değişkenleri döndürür. Kullanıcı tablo 12 sütun var ve ben 8 sütun almak ama ($ user-> telefon gibi) bu noktada columuns bazı belki boş. Nasıl buldum, boş sütun numarası? (Uygun şekilde ..)

Thanks A Lot

2 Cevap

Jenerik, gibi bir şey deneyebilirsiniz:

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

i çözüm bulundu. PHP sihirli get_object_vars işlevi vardır:

$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);