Я взял немного скрипта memcache, который использовал ранее без проблем, но на новой странице я не получил никакого ответа.
memcache находится в функции, которая включена с другой страницы.
я помещаю хэш md5 в запрос mysql и сохраняю его как ключ для данных memcached. если ключ отсутствует в memcache, тогда я иду, создаю данные, помещаю их в memcache и возвращаю их.
Я думаю, что код довольно прост. Вот важные моменты (это большая страница, создающая вывод, так что вам все это не нужно, хотя «возврат», я думаю, важен, так как боюсь, что это может быть то, где я облажался.
Я вызываю функцию с
$outList.= outData($getList);
где $ getList - это запрос mysql
Функция $ outList -
<?php
@$memcache = new Memcache;
@$memcache->connect("localhost",11211);
function outData($getList)
{
$memVal = @$memcache->get(MD5($getList));
if($memVal=='')
{
$results=mysql_query($getList)or die(mysql_error());
// then I do a bunch of stuff with the data
@$memcache->set(MD5($getList), $memVal, false, 60000);
}
return $memVal;
}
Я могу отобразить весь материал для создания $ memVal, но я подозреваю, что ошибка находится в строке if, но этот же код используется на другой странице без проблем.
Что-то не так с этим выглядит?