Ho alcune funzioni in PHP che leggono i dati dalle funzioni di una classe
readUsername(int userId){
$reader = getReader();
return $reader->getname(userId);
}
readUserAddress(){
$reader = getReader();
return $reader->getaddress(userId);
}
Tutti questi chiamano
getReader()
{
require_once("Reader.php");
static $reader = new Reader();
return $reader;
}
Una panoramica di Reader
class Reader{
getname(int id)
{
//if in-memory cache exists for this id return that
//else get from db and cache it
}
getaddress(int id)
{
$this->getname(int id);
//get address from name here
}
/*Other stuff*/
}
Perché è necessario il Lettore di classe La classe Reader esegue alcuni caching in memoria dei dettagli dell'utente. Quindi, ho bisogno di un solo oggetto di lettura di classe e memorizzerà i dettagli dell'utente invece di effettuare più chiamate db. Sto usando statico in modo che l'oggetto venga creato solo una volta. È questo l'approccio giusto o dovrei fare qualcos'altro?