- Fabio Cantaro
Transcript
- Fabio Cantaro
UD7: Operazioni sulle Stringhe Fabio Cantaro Fabio Cantaro Ripasso (1) Le Stringhe Le stringhe sono il tipo di dato più importante in PHP. Sono sequenze di caratteri Le stringhe possono contenere intere frasi e vengono definite utilizzando virgolette doppie o singole. Esempio: $citta = “Catania”; $username = “Lisa”; Fabio Cantaro Ripasso (2) Le Stringhe • Le stringhe possono essere concatenate utilizzando il simbolo punto “.” Esempio: <?php $Nome = “Mario”; $Cognome = “Rossi”; $Nome_completo = $Cognome echo $Nome_completo; ?> Mario Rossi . “ “ . $Nome; Fabio Cantaro Ripasso (3) Le Stringhe Nelle stringhe possono anche essere inseriti i valori delle variabili. Se si inserisce un nome di variabile in una stringa, questo viene sostituito con il suo valore Esempio: $Nome = “Lisa”; $Saluto = “Ciao $Nome !”; echo $Saluto; Ciao Lisa Fabio Cantaro Ripasso (4) Le Stringhe È possibile convertire un numero in stringa e viceversa utilizzando una operazione di cast. Un cast si effettua scrivendo tra parentesi tonde prima della variabile, il tipo in cui si vuole trasformarla: Esempio: $Anno = “Anno “ . (string)$year; $Quantita = (integer)$Qty; Raramente il casting è necessario. Nella conversione verso numeri può produrre risultati errati. Fabio Cantaro Operazioni sulle Stringhe: chop() Elimina gli spazi vuoti finali dalla stringa indicata. Valore di ritorno: Stringa Sintassi: chop(string) Esempio: <? echo chop("vorrei togliere gli spazi finali ?> "); Fabio Cantaro Operazioni sulle Stringhe: chunk_split() Suddivide la stringa in porzioni di length caratteri. Inserendo la stringa end come delimitatore tra ogni porzione. Sintassi: chunk_split() Esempio: <? echo chunk_split(“pinopenapanepone ”, 4, ”#\n”); ?> pino# pena# pane# pone# Fabio Cantaro Operazioni sulle Stringhe: ltrim() Elimina gli spazi vuoti all’inizio della stringa specificata. Valore di ritorno: string Sintassi: ltrim(string) Esempio: <? echo ltrim(“ ?> Hello, World!”); Fabio Cantaro Operazioni sulle Stringhe: trim() Elimina gli spazi vuoti all’inizio ed alla fine della stringa specificata. Valore di ritorno: string Sintassi: trim(string) Esempio: <? echo trim(“ ?> Hello, World! ”); Fabio Cantaro Operazioni sulle Stringhe: ucfirst() Converte in maiuscolo il primo carattere di string. Valore di ritorno: string Sintassi: ucfirst() Esempio: <? echo ucfirst(“hello, world!”); ?> Hello, world! Fabio Cantaro Operazioni sulle Stringhe: ucwords() Converte in maiuscolo il primo carattere di ogni parola di string. Valore di ritorno: string Sintassi: ucwords() Esempio: <? echo ucwords (“hello, world!”); ?> Hello, World! Fabio Cantaro Operazioni sulle Stringhe: substr_replace() Sostituisce in STRING, a partire da START, per LEN caratteri (opzionale), con la stringa REPL Sintassi: substr_replace(string, repl, start [,len]) Esempio: <? echo substr_replace("Hello!, World!","GoodBye,", 0, 8); ?> GoodBye,World! Fabio Cantaro Esempio 2 Se ometto il parametro opzionale LEN => STRING viene interamente sostituita: <? echo substr_replace("Hello!, World!","GoodBye,", 0); ?> GoodBye, Fabio Cantaro Esempio 3: INSERT Se pongo LEN=0 => la substr_replace diventa una INSERT <? echo substr_replace("Hello!, World!","GoodBye,", 0,0); ?> GoodBye,Hello!, World! GOODBYE ha sostituito 0 caratteri => è stata interamente inserita all’inizio OSS: cambiando START la posso inserire ovunque in STRING Fabio Cantaro Operazioni sulle Stringhe: substr() Restituisce len caratteri da string, partendo dalla posizione start. Sintassi: substr(string, start [,len]) Esempio: <? echo substr ("Hello!, World!", 0, 6); ?> Hello! Fabio Cantaro Esempi: substr() Si rammenta che nel computo il primo carattere ha posizione 0 e non 1 <?php // stamperà "html.it" la porzione // dalla posizione 7 alla fine echo substr("Visita html.it",7); // stamperà "html" partendo dalla // posizione 7 per 4 caratteri di lunghezza echo substr("Visita html.it",7,4); ?> Fabio Cantaro Esempi: substr() Se come punto di partenza si specifica un valore negativo, si pa rtirà a ritroso dalla fine della stringa: <?php // stamperà "t" echo substr("Visita html.it",-1); // stamperà "it" echo substr("Visita html.it",-2); // stamperà "html" echo substr("Visita html.it",-7,4); ?> Fabio Cantaro Operazioni sulle Stringhe: strtoupper Converte la stringa specificata in caratteri MAIUSCOLI. Valore di ritorno: string Sintassi: strtoupper(string) Esempio: <? echo strtoupper("Hello, World!"); ?> HELLO, WORLD! Fabio Cantaro Operazioni sulle Stringhe: strtolower() Converte la stringa specificata in caratteri minuscoli. Valore di ritorno: string Sintassi: strtolower(string) Esempio: <? echo strtolower("Hello, World!"); ?> hello, world! Fabio Cantaro Operazioni sulle Stringhe: strlen() Restituisce la lunghezza della stringa specificata. Valore di ritorno: Integer Sintassi: strlen(string) Esempio: <? echo strlen("Hello, World!"); ?> 13 Fabio Cantaro Esercizio Creare un form HTML ( cliente.htm) con i campi: Cognome, Nome, Indirizzo, Cap, Citta, genere (maschio/femmina ) Creare uno script php (cliente.php) in cui: 1. 2. Cognome e nome siano stampati a video sempre con il 1 ° carattere maiuscolo e gli altri minuscoli (=> strtolower + ucwords ) Se maschio inserire, in cognome, “SIG” altrimenti “SIG.RA” Le parole del campo indirizzo siano separate dal carattere @ Fare stampare a video anche la lunghezza di ogni campo (ad esempio: cognome: Cantaro (7) ).