Tengo una página includes.php que cargo al inicio de cada página de mi sitio web. A medida que desarrollo el sitio web, el número de clases que estoy usando va en aumento. Así que terminan con algo como esto:rendimiento de la carga de clases php y el uso de 'extends'
$db = new DB($config);
$login = new Login($db, $config);
$form = new Form($db, $config);
Y la lista sigue y sigue. Tengo dos preguntas sobre esta práctica:
Primero, considerando que podría no estar usando una clase en una página determinada (es posible que no tenga un formulario $ en cada página), ¿cuánto realmente importa, el rendimiento- sabio, para cargar esta clase cada vez que se carga una página dada?
En segundo lugar, puede haber notado que estoy pasando la instancia de clase $ db a todas las otras clases, así como una variable $ config. En el código php de todas las clases, hago algo como esto:
public $db;
public $config;
public function __construct($db, $config, $smarty){
$this->db = $db;
$this->config = $config;
}
luego en los métodos de la clase, que abordan los archivos de base de datos y de configuración con 'esto' como tal:
public function myfunction(){
$this->db;
$this->config;
}
Cuándo debe Uso 'extends' en lugar de pasar $ db a la clase, suponiendo que cada clase usa el db? ¿Pasar $ db a cada clase duele de alguna manera en términos de rendimiento?
Gracias!
¡Excelente y completo! Muchas gracias. –
De nada :-) Diviértete! –
Ampliar las clases ha sido un pequeño misterio para mí desde hace un tiempo, esta es una gran y simple explicación que instantáneamente me dejó muy claro cuándo usarla. – Kokos