Ben oldukça garip bir sorun var. Çünkü bir certain PECL bug, ben memcached içine bir var geçmek ve değişti alır. Önerilen çözüm $data
$data.''
yerine geçmek ve bu başvuru yok eder. Ben sadece memcached içine dizeleri geçemiyor çünkü ama bu benim için çalışmaz, ben tüm veri türlerini geçmek.
Yani $dataPass = $data
gibi yeni bir değişken atama ve $dataPass
geçen sona erdi. Ama gerçekten garip bir şey oluyor:
// ...
var_dump("data 1");
var_dump($data);
$dataPass = $data; // Dereferencing the variable
// because of http://pecl.php.net/bugs/bug.php?id=14239
var_dump("data 2");
var_dump($data);
var_dump("dataPass 2");
var_dump($dataPass);
$this->memcache->set($key, $dataPass, false, time() + $expire);
var_dump("data 3");
var_dump($data);
var_dump("dataPass 3");
var_dump($dataPass);
/*
string(11) "data 1"
bool(false)
string(22) "data 2"
bool(false)
string(26) "dataPass 2"
bool(false)
string(10) "data 3"
string(0) "" <--- Why is this not bool(false)?
string(14) "dataPass 3"
string(0) ""
*/