Добрый день.... Проблема вот в чем. Существует класс для кеширования SQL-запросов. Запросы кешируются в массиве. Если Время жизни запроса не истекло т.е. кэш актуален я просто пытаюсь вернуть результат записаный в массиве вот так... Код (Text): return $this->sql_cache[$this->hash_query]; Однако возвраемое значение пустое, то есть вывол содержимого запроса на экран Код (Text): $result=$cache_object->caching($sql_query); while ($rows=mysqli_fetch_array($result)){ echo $rows['id']." ".$rows['value_level1']."<br>"; } Ничего не дает. Подскажите пожалуйста где ошибся
1) так апать тему - верный путь вызвать негатив. 2) нам не видно как ты сохраняешь в массив, что такое $this->hash_query и т.п. 3) смени подпись и не позорься.
Прошу простить... Начинаю исправлятся $this->hash_query - это ключ коздается он с помощью функции md5() Код (Text): public function caching($sql_query){ $this->hash_query=md5($sql_query); if($this->need_for_cache($sql_query)){ #Проверяем нужно ли вообще кэшировать этот запрос if($this->have_sql_cache()) #Если да то имеется ли этот запрос в кэше if($this->check_time_to_live()){ #Если есть проверяем не истекло ли время жизни кеша echo "return cached query<br>"; return $this->sql_cache[$this->hash_query]; #Если время не истекло то возвращаем результат запроса } else{ $this->add_query_to_cache($sql_query); #иначе обновляем запрос в кэш } else{ $this->add_query_to_cache($sql_query); #Если запроса не существует то просто добавляем его в кэш } } else{ mysqli_query($this->link_to_base,$sql_query); } return $this->sql_cache[$this->hash_query]; }