Всем привет, есть таблица translate на базе mysql с переводом в размере 700 тыс записей, делаю в цикле перевод каждое слово:
foreach($res->data->skuModel as $skuModel){
getTranslate($skuModel->propName);
}
при каждом цикле идет запрос к базе:
function getTranslate($text) {
$this->db->query("SELECT * FROM `translate` WHERE zh='$text' LIMIT 1");
foreach ($query->rows as $result) {
return $result['translate'];
}
}
И вот такой грязный код тормозить страницу:
выполнения за 5 секунд это еще нормально. Если пройтись по циклу 100 раз то вот тогда начинается ад. Не правильный подход написания кода не реально тормозить страницу вообще страница должна сгенерироваться за 0,5 сек но тут у меня такой кошмар даже не знаю что мне делать.
Вопрос: Как мне оптимизировать код.
Проблема решена как сказали @mike и @Ипатьев использовал индекс заменил тип из text на varchar(1000) подключил индекс и вуаля в 100 000 раз быстрее.
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости