[Php-it] php, oop e caricare le classi all'inizio dello script...
Jonathan Stoppani
st.jonathan at gmail.com
Wed Mar 1 12:01:18 CET 2006
On Mar 1, 2006, at 11:53 AM, Cristiano Verondini wrote:
>> poi, quando scrivo i miei vari script1.php, script2.php mi tocca
>> dover
>> mettere una scarica di include all'inizio del file, in modo da poter
>> poi usare tutte le classi così definite..
>>
>> Queste operazioni se usate su server molto carichi, non sono
>> piuttosto
>> pesanti?
>
> Si, decisamente.
>
> Quello che si dovrebbe fare è una sorta di caricamento on-
> demand. Ovvio che in questo caso il contro è legato al fatto di
> dover includere un sacco di piccoli file ed ogni volta controllare
> se è stato incluso.
>
> Non ho ancora trovato una soluzione che mi soddisfi appieno, ma
> il caricamento su 'richiesta' mi sembra la strada migliore.
>
> Cris
Se hai supporto php5 (e se lavori con le classi è meglio averlo) puoi
sfruttare la funzione __autoload() e fargli caricare il file della
singola classe su richiesta.
function __autoload($classname) {
require_once('/mydir/library/'.$classname.'.class.php');
}
Naturalmente puoi apportare varie modifiche a questa classe. Per
esempio, se organizzi le classi per tipo (e quindi in cartelle) e hai
una classe tipo:
class images_CreateImage {}
puoi usare la funzione così:
function __autoload($classname) {
$path = str_replace('_', DIRECTORY_SEPARATOR, $classname);
require_once('/mydir/library/'.$classname.'.class.php');
}
Jonathan Stoppani
More information about the Php-it
mailing list