I have an issue that occurs randomly on a machine. After a number of reloads of the page i can't read $this->_foo although it is set (var_dump shows it but the script cannot read it). The code works locally and on other machines i tested. Apache restart seems to fix it but only temporary. Environment: . PHP Version 5.3.3 . Linux 2.6.32-220.2.1.el6.x86_64 #1 SMP Fri Dec 23 02:21:33 CST 2011 x86_64 . Apache 2.0 class FooBar { protected $_foo; public function setFoo($bar) { if (!$bar) { print_r("Cannot find bar"); } $this->_foo = $bar; if (!$this->_foo) { print_r("Cannot read {$this->_foo} set with $bar"); var_dump($this); } var_dump($this); return $this; } } $foobar = new FooBar; $foobar->setFoo('bar'); The output when this happens would be: Cannot read set with barobject(FooBar)#1 (1) { ["_foo":protected]=> string(3) "bar" } object(FooBar)#1 (1) { ["_foo":protected]=> string(3) "bar" } I'm going nuts here, and nobody seems to be able to reproduce this. Where should I start looking?