Newsgroup: it.comp.www.php
Titolo: Variabile di Applicazione

Ciao a tutti,
	sono un nuovo utilizzatore di PHP, nonché un nuovo
frequentatore di questo gruppo di discussione :)
Finora sono andato avanti a pane ed ASP (i puristi di questo gruppo mi
perdonino :). Ora ho un problema; non riesco a trovare l'analogo delle
variabili di applicazione di ASP in PHP.
Le variabili di applicazione sono, appunto, variabili che vengono
condivise tra le diverse sessioni attualmente aperte, e vengono
mantenute fino a quando il webserver č up-and-running.
Sono molto utili per fare il caching di contenuti dinamici in memoria
(faccio una query, genero l'HTML con i risultati della query, lo metto
in una variabile, e, ad esempio, per i prossimi 30 minuti non accederň
piů al database, ottenendo un forte aumento prestazionale).
Inoltre sono utili per memorizzare le variabili di connessioni al
database. Cosě se cambio la stringa di connessione al database la devo
modificare in un unico luogo. Sotto ASP questo luogo č il global.asa,
il cui contenuto viene interpretato all'avvio/fine del servizio web o
all'avvio/fine di una sessione. 
Ciao,
Andrea.

 ha scritto nel
messaggio news:3be96c56...@newsreader.mailgate.org...

Mi sembrano le variabili di sessione...
ASP: Session("variabile");
PHP: session_register("variabile"); // devi aver prima aperto la sessione
con session_start();
inoltre in php c'č l'istruzione global, ma non la uso molto č non so
esattamente a cosa serve, a parte rendere disponibili variabili esterne in
funzioni (function())
Alex

funzioni (function())
Serve esattamente a quello, come se fosse passata per indirizzo.
Ciaps
--------
Paolo Dell'Unto
gab...@tiscalinet.it
ICQ # 770759

funzioni (function())
Quello. Non serve a nient'altro, ma e' abbastanza! :-)
Leonardo
-- 
Nior thainig ar major i dtus an lae chugainn,
is ni rabhamar fein ann i gcoir na gceart
ach mar sheolfai aoireacht bo gan aoire,
ar thaobh na greine de Sliabh na mBan.

 più al database, ottenendo un forte aumento prestazionale).
non esistono ma facilmente da simulare con un include/require globale
ad esempio
require "global.inc.php"
che contiene i tuoi valori (volendo anche come costanti).
$database="mioDatabase";
Per l caching si scrive un modulo che salva le pagine in un database e se la
stessa pagina viene richiesta la tiri fuori dal database (con tutti criteri
possibili per aggiornarlo, a tempo, cancellando la cache a mano, update,
time to live).
per il caching usi la funzione ob_start() per captare l'output html.

per il caching usi la funzione ob_start() per captare l'output html.
Grazie! Questa funzione non la conoscevo.
Ciao,
Andrea.

 esecuzione della pagina).
Beh, invece di usare il database potresti anche salvare i dati direttamente
nel filesystem, con un nome ben chiaro associato alla richiesta del URL.
Anche ASP  deve salvare da qualche parte i dati e non fa miracoli.
Il cache alla fine ti fa il sistema operativo, perche' ottimizza l'accesso
ai file piu frequenti. Se vai oltre la memoria fisica tutti sistemi devono
alla fine fare qualche sforzo in piu ed eseguono il pageswapping con la
memoria virtuale su disco.
Non penso che si salvi molto tempo usando techniche diverse di caching,
anche database come mySQL si basano su filesystem e vengono cached come
qualsiasi file se leggi solo i dati. Mi affiderei piu' alla ottimizzazione
di accesso al filesystem del linux e non penserei troppo a soluzioni
supersofisticate su un server che magari ha un load basso.
Forse nel tuo caso addaterei il metodo di salvare in una directory le
pagine. Poi qualche processo daemone che fa ognitanto pulizza e togli i
cadaveri dalla cartella (opendir, filemtime, unlink?) ;-).
Come nome del file si potrebbe usare il famoso md5(). e con un
file_exists("cache/".md5($url)) vedi se esiste il file, se non esiste crei
la pagine e la salvi con fopen("cache/".md5($url),"w")