$array = array ("nome" => "valore", "nome2" => "valore2");
while (list($key, $val) = each ($array)) {
echo "$key => $val\n";
}
che restituirà:
nome => valore
nome2 => valore2
Se invece l'array non è associativo, il codice sarà:
$array = array ("nome", "valore", "nome2", "valore2");
while (list($key, $val) = each ($array)) {
echo "$key => $val\n";
}
ed il risultato:
0 => nome
1 => valore
2 => nome2
3 => valore2
Come avrete certamente notato, la funzione
each()viene spesso utilizzata insieme alist(), che vedremo in seguito;
$stringa = "Questo è un corso su ASP";
echo ereg_replace("ASP", "PHP", $stringa);
Notate che si sarebbe potuto scrivere anche:
echo ereg:replace("ASP", "PHP", "Questo è un corso su ASP");
che non avrebbe avuto molto senso, comunque.
if (ereg("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})", $date, $regs)) {
echo "$regs[3].$regs[2].$regs[1]";
} else {
echo "Invalid date format: $date";
}
Tutto questo ciclo è fatto per controllare che una data sia in formato corretto. Vediamo il significato di "[0-9]{4})-([0-9]{1,2})-([0-9]{1,2}". Per chi conosca le espressioni regolari, non sarà difficile tradurre quanto sopra con "un numero da 0 a 9 ripetuto quattro volte seguito da un '-', da un numero da 0 a 9 ripetuto una o due volte, da un '-' e da un numero da 0 a 9 ripetuto una o due volte". Come spesso accade, leggere un'espressione regolare è molto più semplice che tradurla nel linguaggio parlato.
ereg_replace(), solamente che in questo caso l'espressione regolare è sostituita in maniera "case insensitive", ossia ignorando i caratteri maiuscoli e minuscoli;
ereg(), solamente che in questo caso l'espressione regolare è sostituita in maniera "case insensitive";
error_log(message, mesage_type, destination);
Message_type è un numero che specifica dove deve arrivare il messaggio. Può essere:
0: il messaggio è inviato al logger del PHP o nel file specificato da "error_log";
1: il messaggio è inviato per email al parametro (probabilmente un valido indirizzo email) specificato in "destination"; 2: il messaggio è inviato al debugger;
3: il messaggio è inserito in append al parametro specificato in destination";
exit() è utile nei casi si voglia fermare uno script in caso qualcosa non soddisfi determinate condizioni, ad esempio:
if (condizione) {
esegui il blocco;
} else {
exit;
}
Ricordate che
exit()non riporta un messaggio di errore come fadie(): se vi interessa dare "spiegazioni" sul perchè lo script termina, utilizzatedie(), ma ricordate che non è possibile scrivere:
exit "Esco dal programma\n";
o meglio, è possibile ma non ha alcun effetto se non quello di uscire;
echo exp(3);
restituirà: 20.0855369...
$nomi = "Tizio,Caio,Sempronio";
list ($nome1, $nome2, $nome3) = explode (",", $nomi);
echo "$nome1\n$nome2\n$nome3\n";
che restituirà:
Tizio
Caio
Sempronio
Explode()è una versione semplificata displit(), che vedremo in seguito. Entrambe le funzioni, inoltre, sono molto utili nel caso ci sia la necessità di leggere determinati file contenenti delle liste;
Sessioni PHP: cosa sono, come si usanoDalla configurazione di PHP, alla gestione delle sessioni in un... |
Continuous Integration: automatizziamo i client con PhingContinuous Integration: automatizziamo i client con Phing. Esempi... |
Archiviazione delle applicazioni PHP con PharCome incorporare intere applicazioni PHP all'interno di un singolo... |
I traits in PHP 5.4Cosa sono, a cosa servono e come si unsano i traits, la novità per... |
PHP 5.4: il web server integratoImpara ad usare il web server integrato nella versione 5.4 di PHP:... |
Guida Yii FrameworkCome creare applicazioni Web in modo semplice e veloce con il... |
Guida Applicazioni Facebook con PHPCome realizzare un'applicazione per Facebook. Dalle basi della... |
Guida PHP con Windows e IISInstallare ambienti per lo sviluppo e la produzione di applicazioni... |
Ogni lunedì, direttamente nella tua e-mail: script, articoli, guide e tutorial su PHP, MySQL e Apache.
Iscriviti alla newsletter
|
|
Corso PHP per Webmaster11 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base25 Giugno 2012 a Milano |
|
|
Corso Google AdWords Base05 Giugno 2012 a Roma |