2016-03-22 19 views
1

Ben SplQueue php sınıfını kullanarak ve memcache içinde kuyruğu saklanması veri kuyruğu oluşturma:Zl2'de memcache'de SplQueue nesnesini düzgün şekilde depolayamıyor ..?

$queue = new \SplQueue(); 
$queue->enqueue($data); 
print_r($queue); 
$this->getServiceLocator()->get('memcached')->setItem('key', $queue); 
$queue = $this->getServiceLocator()->get('memcached')->getItem('key'); 
print_r($queue); 

print_r böyle boş sonucunu veriyor Son: olarak

SplQueue Object 
(
    [flags:SplDoublyLinkedList:private] => 4 
    [dllist:SplDoublyLinkedList:private] => Array 
     (
     ) 

) 

Fakat ilk print_r oluşturulan veriyor kuyruk beklenen. Bu kod, yerel sistemimde gayet iyi çalışıyor ancak üretim sunucusunda yukarıda belirtilen sorunu üretiyor.

Not: - Memcahced versiyonu takdir edilecektir iki makinede 1.4

Herhangi yardım aynıdır .. !!

cevap

1

Googling yaparken, here numaralı sürümü bulduğumda, PHP sürümünde SplDoublyLinkedList sınıfının bu 5.4 değerine seri hale getirilmesiyle ilgili bir sorun var. SplDoublyLinkedList::serialize, üretim sunucusunda çalışmadı (sunucu PHP 5.3 ile çalışıyordu) ve PHP sürümünün 5.4'e yükseltilmesi dışında bunun için alternatif bir çözüm yok.

İlgili konular