У меня есть 400 плюс записи, чтобы извлечь из этого метода, и для загрузки страницы требуется почти 2 минуты. Поэтому, пожалуйста, помогите мне уменьшить время загрузки этого метода.Как уменьшить время загрузки данных mysql, codeigniter
function teacher_attendance_selector()
{
$data['year'] = $this->input->post('year');
$data['timestamp'] =strtotime($this->input->post('timestamp'));
$query = $this->db->get_where('teacher_attendance' ,array(
'teacher_id'=>$data['teacher_id'],
'year'=>$data['year'],
));
if($query->num_rows() < 1) {
$teachers = $this->db->get_where('teacher' , array(
))->result_array();
foreach($teachers as $row) {
$attn_data['year'] = $data['year'];
$attn_data['timestamp'] = $data['timestamp'];
$attn_data['teacher_id'] = $row['teacher_id'];
$this->db->insert('teacher_attendance' , $attn_data);
}
}
redirect(base_url().'index.php?admin/manage_teacher_attendance_view/'.$data['timestamp'],'refresh');
}
Избегайте запросов в цикле поможет много. –
Возможный дубликат [как ускорить этот код php/mysql] (http://stackoverflow.com/questions/36034815/how-to-speed-up-this-php-mysql-code) – Walf
без цикла запроса i can not вставьте в таблицу teacher_attendance .. это должно произойти в этот момент – sud