На самом деле, автоматическое автоматическое увеличение лучше для первичного ключа. Но если вы хотите сгенерировать его, вы можете сделать это так
function GenerateId() {
$query = $this->db->select('ID')
->from('table_name')
->get();
$row = $query->last_row();
if($row){
$idPostfix = (int)substr($row->ID,1)+1;
$nextId = 'A'.STR_PAD((string)$idPostfix,5,"0",STR_PAD_LEFT);
}
else{$nextId = 'A00001';} // For the first time
return $nextId;
}