Passiamo ora ad esaminare alcune funzioni che operano sulle stringhe (l'eventuale indicazione di un parametro tra parentesi quadre indica che quel parametro è facoltativo, quindi può non essere indicato nel momento in cui si chiama la funzione):
strlen(stringa)
- verifica la lunghezza della stringa, cioè il numero di caratteri che la compongono. Restituisce un numero intero.
trim(stringa)
- elimina gli spazi all'inizio e alla fine della stringa. Restituisce la stringa modificata.
ltrim(stringa)
- elimina gli spazi all'inizio della stringa. Restituisce la stringa modificata.
rtrim(stringa)
- elimina gli spazi alla fine della stringa. Restituisce la stringa modificata.
substr(stringa, intero [, intero])
- restituisce una porzione della stringa, in base al secondo parametro
(che indica l'inizio della porzione da estrarre), e all'eventuale terzo
parametro, che indica quanti caratteri devono essere estratti. Se il
terzo parametro non viene indicato, viene restituita tutta la parte
finale della stringa a partire dal carattere indicato.
I caratteri vanno contati a partire da zero, per cui se si chiama la funzione consubstr(stringa, 4)
verranno restituiti tutti i caratteri a partire dal quinto. Si può anche indicare un numero negativo come carattere iniziale: in questo caso, il carattere iniziale della porzione di stringa restituita verrà contato a partire dal fondo.
Ad esempio, consubstr(stringa, -5, 3)
si otterranno tre caratteri a partire dal quintultimo (da notare che in questo caso il conteggio non inizia da zero, ma da 1: cioè-1
indica l'ultimo carattere,-2
il penultimo e così via).
Se infine si indica un numero negativo come terzo parametro, tale parametro non verrà più utilizzato come numero di caratteri restituiti, ma come numero di caratteri non restituiti a partire dal fondo. Esempio:substr(stringa, 3, -2)
restituisce i caratteri dal quarto al terzultimo. La funzione restituisce la porzione di stringa richiesta. str_replace(stringa, stringa, stringa)
- effettua una sostituzione della prima stringa con la seconda all'interno della terza. Ad esempio:
str_replace('p', 't', 'pippo')
sostituisce le 'p' con le 't' all'interno di 'pippo', e quindi restituisce 'titto'. Restituisce la terza stringa modificata. Esiste anche la funzionestr_ireplace()
, che è equivalente ma che cerca la prima stringa nella terza senza tener conto della differenza fra maiuscole e minuscole. strpos(stringa, stringa)
- cerca la posizione della seconda stringa all'interno della prima. Ad esempio:
strpos('Lorenzo', 're')
restituisce 2, ad indicare la terza posizione. Restituisce un intero che rappresenta la posizione a partire da 0 della stringa cercata. Se la seconda stringa non è presente nella prima, restituisce il valore booleano FALSE. La funzionestripos()
fa la stessa ricerca senza tenere conto della differenza fra maiuscole e minuscole. strstr(stringa, stringa)
- cerca la seconda stringa all'interno della prima, e restituisce la
prima stringa a partire dal punto in cui ha trovato la seconda.
strstr('Lorenzo', 're')
restituisce 'renzo'. Restituisce una stringa se la ricerca va a buon fine, altrimenti il valore booleano FALSE. La funzione stristr() funziona allo stesso modo ma non tiene conto della differenza fra maiuscole e minuscole. strtolower(stringa)
- converte tutti i caratteri alfabetici nelle corrispondenti lettere minuscole. Restituisce la stringa modificata.
strtoupper(stringa)
- converte tutti i caratteri alfabetici nelle corrispondenti lettere maiuscole. Restituisce la stringa modificata.
ucfirst(stringa)
- trasforma in maiuscolo il primo carattere della stringa. Restituisce la stringa modificata.
ucwords(stringa)
- trasforma in maiuscolo il primo carattere di ogni parola della stringa, intendendo come parola una serie di caratteri che segue uno spazio. Restituisce la stringa modificata.
explode(stringa, stringa [, intero])
- trasforma la seconda stringa in un array, usando la prima per
separare gli elementi. Il terzo parametro può servire ad indicare il
numero massimo di elementi che l'array può contenere (se la suddivisione
della stringa portasse ad un numero maggiore, la parte finale della
stringa sarà interamente contenuta nell'ultimo elemento).
Ad esempio:explode(' ', 'ciao Mario')
restituisce un array di due elementi in cui il primo è 'ciao' e il secondo 'Mario'. Restituisce un array.
$a = 'IERI ERA DOMENICA'; /* $b diventa 'ieri era domenica', * ma $a rimane 'IERI ERA DOMENICA' */ $b = strtolower($a); strlen('abcd'); // restituisce 4 trim(' Buongiorno a tutti '); // restituisce 'Buongiorno a tutti' substr('Buongiorno a tutti', 4); // 'giorno a tutti' (inizia dal quinto) substr('Buongiorno a tutti', 4, 6); // 'giorno'(6 caratteri a partire dal quinto) substr('Buongiorno a tutti', -4); // 'utti' (ultimi quattro) substr('Buongiorno a tutti', -4, 2); // 'ut' (2 caratteri a partire dal quartultimo) substr('Buongiorno a tutti, 4, -2); // 'giorno a tut' (dal quinto al terzultimo) str_replace('Buongiorno', 'Ciao', 'Buongiorno a tutti'); // 'Ciao a tutti' str_replace('dom', 'x', 'Domani è domenica'); // 'Domani è xenica' str_ireplace('dom', 'x', 'Domani è domenica'); // 'xani è xenica' strpos('Domani è domenica', 'm'); // 2 (prima 'm' trovata) strstr('Domani è domenica', 'm'); // 'mani è domenica' (a partire dalla prima 'm') strtoupper('Buongiorno a tutti'); // 'BUONGIORNO A TUTTI' ucfirst('buongiorno a tutti'); // 'Buongiorno a tutti'; ucwords('buongiorno a tutti'); // 'Buongiorno A Tutti'; /* suddivide la stringa in un array, separando un elemento * ogni volta che trova una virgola; avremo quindi un array * di tre elementi: ('Alberto','Mario','Giovanni') */ explode(',','Alberto,Mario,Giovanni'); /* in questo caso l'array può contenere al massimo due elementi, * per cui nel primo elemento andrà 'Alberto' e nel secondo il * resto della stringa: 'Mario,Giovanni' */ explode(',','Alberto,Mario,Giovanni',2);
0 commenti:
Posta un commento
Proponi un'idea, segnalaci un problema.
Entra a far parte di CS3, pubblica i tuoi articoli.
Scrivi un commento!