1
Zum ersten Mal mit Memcache herumspielen; hier ist mein Code:Warum ruft memcache-> get() nur die erste Zeile aus der Datenbank ab?
$memcache = new Memcache();
$memcache->connect('127.0.0.1', 11211) or die('Memcache connection error');
// set the key then check the cache
$key = md5(' SELECT * FROM `users` ');
$get_result = $memcache->get($key);
if($get_result) {
echo "Data Pulled From Cache";
var_dump($get_result);
}
else {
$query = ' SELECT * FROM `users` ';
$result = mysql_query($query);
$row = mysql_fetch_assoc($result);
$memcache->set($key, $row, TRUE, 20); // stored for 20 seconds
echo "Data Pulled from the Database";
var_dump($row);
}
Ich habe 50.000 Dummy-Benutzer in meiner Benutzer-Tabelle, wie nur die var-Dump kommen zeigt den ersten Benutzer? Wie Sie sehen können, gibt es keine Limit-Klauseln in der Abfrage.
Sie sollten 'var_dump ($ get_result)' nicht 'var_dump ($ get_result [ 'username']); ' – Baba