I’m trying to cache an Object’s method, so every time I call the Class and the method, it won’t process again after first time.
Here is what I’m trying to achieve,
class App {
public $data = null;
public function print() {
if ( $this->data === null ) {
$this->data = "First time.";
}
else {
$this->data = "After first time.";
}
return $this->data;
}
}
$data = new App();
echo $data->print() . "<br>";
echo $data->print() . "<br>";
$data2 = new App();
echo $data2->print() . "<br>";
echo $data2->print() . "<br>";
Result
First time. After first time. First time. After first time.
As you can see, it’s processing the print() method again when I call it again in $data2.
Is it possible to cache so result will be
First time. After first time. After first time. After first time.