Quando si lavora con il framework EzPublish, bisogna tenere presente che questo utilizza pesantemente un sistema di caching assai potente quanto fastidioso in fase di sviluppo. L’importanza di questo sistema di caching è tale per cui ci sono degli aspetti che non possono essere tralasciati quando si lavora con questo prodotto.

Supponiamo ad esempio di dover spostare un servizio implementato con questo framework da un dominio in un altro; questo comporta l’obbligo di modificare almeno i seguenti dati:

- le variabili SiteURL contenute nei file di configurazione site.ini.append.php delle cartelle setting/siteaccess/<nome_siteaccess> e setting/override/<nome_siteaccess>

- i dati di accesso alla base di dati, sempre nei medesimi file

- ed infine è necessario svuotare tutte le cache, per azzerare i percorsi e alcuni dati precedentemente memorizzati in cache, appunto

Il problema è che spesso non si può utilizzare il sistema più semplice, ovvero quello di accedere nel pannello di amministrazione e servirsi della sezione dedicata per la gestione della cache. Per questo motivo, vi indichiamo brevemente tutti i metodi che possiamo utilizzare per compiere l’azione di svuotare tutte le cache.

1) Dal pannello di Amministrazione

Utilizziamo il pannello di amministrazione per pulire tutte le cache via GUI:

  1. Entrare nel tab “SETUP”
  2. Cliccare sull’icona di cancellazione di tutte le cache
  3. Aggiornare il browser

2) Dalla Linea di commando

Questo è un processo che spesso passa inosservato, ma che è molto comodo in situazioni come quella di cui sopra, ovvero quando si sposta un’installazione di EzPublish. In sistemi a base Unix, è sufficiente utilizzare i seguenti comandi:

cd /percorso/di/ezpublish;
./bin/php/ezcache.php --clear-all --purge;

Se invece si utilizza un sistema Windows, i comandi da utilizzare sono i seguenti

# cd c:/web/pro/ezpublish/doc;/bin/php/ezcache.php --clear-all --purge;
c:\php\php .

3) Procedimento manuale

E’ anche possibile pulire le cache a mano, nel caso in cui non sia possibile utilizzare uno dei metodi precedenti. Per fare questo, è sufficiente seguire questa procedura (per sistemi Unix – per sistemi Windows è sufficiente cancellare le medesime cartelle):

cd /percorso/di/ezpublish;
rm -vrf /var/cache;
rm -vrf /var/<tipo di installazione(ezwebin_site, ezflow_site,ecc)>/cache


I programmatori si trovano molto spesso a lavorare con le date: in applicativi di gestione del contenuto ad esempio, sono praticamente un elemento obbligatorio senza il quale molte operazioni basilari, come gli ordinamenti cronologici, non sarebbero possibili.

Ecco perchè diventa molto importante saper gestire questo tipo di dato. Vi sono molti modi differenti di manipolare le date, ma quello che vogliamo presentare oggi è una soluzione che riguarda il salvataggio di date in una base di dati e il conseguente recupero.

Molti programmatori utilizzano le funzioni di manipolazione delle stringhe per formattare le date, ignorando che tale soluzione è poco performante ed ancora meno efficiente. Quando si lavora ad un progetto con un database alle spalle, bisogna sempre tenere presente che far eseguire alcuni tipi di operazioni al DBMS piuttosto che all’interpreste del linguaggio di programmazione (nel caso del PHP, ad esempio) è sicuramente molto più performante oltre che leggibile.

Bisogna a questo scopo conoscere alcune funzionalità che i database, o meglio, i DBMS, mettono a disposizione. Una di queste è proprio DATE_format , che appunto durante una interrogazione permette di inserire nel result set le date già formattate e pronte per l’utilizzo.

Vediamo un esempio:

SELECT title, created DATE_format(created, ‘ %e/%m/%Y, %l:%i%p’) as created
FROM table
WHERE category=1
ORDER BY created DESC

Supponiamo di avere una tabella per le notizie, da cui vogliamo recuperare il titolo e appunto la data di crezione di ogni item.

Attraverso l’utilizzo della funzione DATE_format messa a disposizione dal motore di MySQL, riceviamo una data già formatta è pronta per l’uso, senza dover richiamare ulteriori funzioni di formattazione o di manipolazione di stringhe, con un conseguente aumento delle prestazioni (seppure di pochi microsecondi nella maggior parte dei casi) e della leggibilità del codice.

DATE_format accetta due parametri: il primo è la data da formattare, il secondo è una stringa di formattazione, che segue delle regole simili a quelle utilizzate per questo tipo di stringhe dalla maggior parte dei linguaggi di programmazione, e che trovate qui.

A questo punto, quando si utilizzerà il relativo result set, si potranno usare direttamente sia il campo title che il campo created senza ulteriosi interventi da parte del programmatore.