Ежедневная обработка данных лучше всего выполнять как задачу cron на сервере.
0 12 * * * php /path_to_codeigniter/index.php customer pend_to_cancel
Где ваш контроллер может выглядеть как
class Customer extends MY_Controller {
public function pend_to_cancel()
{
if($this->input->is_cli_request()) {
$this->where('renew_date >', date('Y-m-d'));
$query = $this->get('customers');
foreach ($query->result() as $customer_row) {
// Check if customer should be set to suspend
}
}
return;
}