4 funzioni native del linguaggio php

Page 1

Funzioni native di PHP


Le funzioni native di PHP PHP offre una vasta gamma di funzioni native, che ci permettono di ottenere con facilitĂ i risultati piĂš disparati. Di seguito troverete un elenco delle principali funzioni native di PHP che vi invitiamo ad approfondire insieme allo studio e alla ricerca delle altre numerose funzioni offerte dal linguaggio. Vi invitiamo a consultare il sito di supporto a PHP: http://it2.php.net/


Funzioni sulle variabili Tra le funzioni native di PHP destinate alla gestione delle variabili troviamo: • empty(valore): verifica se la variabile che le passiamo è vuota (se contiene una stringa vuota o un valore numerico pari a 0, non definita o con valore NULL. Restituisce un valore booleano. • is_null(valore): verifica se la variabile equivale a NULL. Restituisce un valore booleano. • is_int(valore), is_integer(valore), is_long(valore): verificano se la variabile è di tipo intero. Le tre funzioni restituiscono un valore booleano.


• is_float(valore), is_double(valore), is_real(valore): verificano se la variabile è di tipo numerico float, double o real. Le tre funzioni restituiscono un valore booleano. • is_string(valore): verifica se la variabile è una stringa. Restituisce un valore booleano. • is_array(valore): verifica se la variabile è un array. Restituisce un valore booleano. • is_numeric(valore): verifica se la variabile contiene un valore numerico. Restituisce true anche nel caso di una stringa che contenga valori numerici.


• print_r(valore): stampa (sul video/browser) il contenuto della variabile passata. • unset(valore): elimina la variabile specificata. Esempi: $b = empty($a); $a = 5; $b = isset($a); $b = is_float($a); $b = is_string($a); unset($a); $b = is_null($a);

//$a non è ancora definita, quindi $b sarà vero //vero //falso: $a è un intero //falso //eliminiamo la variabile $a; //vero, ma genera errore


Funzioni sulle stringhe Le funzioni sulle stringhe hanno lo scopo di modificare la stringa passata. Il valore ottenuto è il risultato della funzione, che quindi deve essere memorizzato in una variabile. Tra le funzioni native di PHP destinate alla gestione delle stringhe troviamo: • strlen(stringa): restituisce la lunghezza della stringa: il numero di caratteri che la compongono • trim(stringa): elimina gli spazi all'inizio e alla fine della stringa. • ltrim(stringa): elimina gli spazi all'inizio della stringa. • rtrim(stringa): elimina gli spazi alla fine della stringa.


• 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. Da notare che i caratteri vanno contati a partire da zero, per cui se si chiama la funzione con substr(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, con substr(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. Per questa funzione vi invitiamo ad un approfondimento. • 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'. • strtolower(stringa): converte tutti i caratteri in lettere minuscole.


• strtoupper(stringa): converte tutti i caratteri in lettere maiuscole. • ucfirst(stringa): trasforma in maiuscolo il primo carattere della stringa. • 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 sarebbe interamente contenuta nell'ultimo elemento). Ad esempio: explode(' ', 'ciao mondo') restituisce un array di due elementi in cui il primo è 'ciao' e il secondo 'mondo'. Restituisce un array.


Esempi: strlen('abcd'); trim(' Buongiorno a tutti '); substr('Buongiorno a tutti', 4); substr('Buongiorno a tutti', 4, 6);

//restituisce 4 //restituisce 'Buongiorno a tutti' /* 'giorno a tutti' (inizia dal quinto) */ /* 'giorno'(6 caratteri a partire dal quinto) */

str_replace('Buongiorno', 'Ciao', 'Buongiorno a tutti');

/* 'Ciao a tutti' */

strpos('Domani è domenica', 'm'); strstr('Domani è domenica', 'm');

//2 (prima 'm' trovata) /* 'mani è domenica' (a partire dalla prima 'm') */

strtoupper('Buongiorno a tutti'); ucfirst('buongiorno a tutti'); ucwords('buongiorno a tutti');

//'BUONGIORNO A TUTTI' //'Buongiorno a tutti'; //'Buongiorno A Tutti';

explode(',','Alberto,Mario,Giovanni'); /* 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')*/


Funzioni sugli array Tra le funzioni native di PHP destinate alla gestione degli array troviamo: • count(array): restituisce il numero di elementi dell'array. • sort(array): ordina gli elementi dell'array. Nota: questa funzione, contrariamente a molte altre, modifica direttamente l'array che le viene passato in input e le chiavi vengono riassegnate partendo da 0. • rsort(array): ordina gli elementi dell'array in ordine decrescente. Stesse caratteristiche di sort(array) • asort(array): funziona come sort(), con la differenza che vengono mantenute le chiavi originarie degli elementi.


• arsort(array): come rsort(), ordina in modo decrescente mantenendo però le chiavi originarie. • in_array(valore, array): cerca il valore all'interno dell'array. Restituisce un valore booleano: vero o falso a seconda che il valore cercato sia presente o meno nell'array. • array_key_exists(valore, array): cerca il valore fra le chiavi (e non fra i valori) dell'array. Restituisce un valore booleano. • array_search(valore, array): cerca il valore nell'array e ne indica la chiave. Restituisce la chiave del valore trovato. • array_merge(array, array [, array...]): unisce gli elementi di due o più array. Gli elementi con chiavi numeriche vengono accodati l'uno all'altro e le chiavi rinumerate. Le chiavi associative invece vengono mantenute e, nel caso vi siano più elementi


nei diversi array con le stesse chiavi associative, l'ultimo sovrascrive i precedenti. Restituisce l'array risultante dalla fusione. • implode(stringa, array): è la funzione opposta di explode() e serve a riunire in un'unica stringa i valori dell'array. La stringa indicata come primo parametro viene utilizzata come separatore fra gli elementi dell'array. Restituisce una stringa. Esempi: $arr = array('Luca', 'Giovanni', 'Matteo', 'Paolo', 'Antonio', 'Marco', 'Giuseppe'); $n = count($arr); // $n vale 7 $arr1 = array_reverse($arr); /* $arr1 avrĂ gli elementi invertiti, da 'Giuseppe' a 'Luca' */


sort($arr); Matteo', 'Paolo' */ $a = in_array('Giovanni', $arr); $a = in_array('Francesco', $arr); $stringa = implode(' ', $arr);

/* ora $arr sarà: 'Antonio', 'Giovanni', 'Giuseppe', 'Luca', 'Marco', '

// $a è vero (TRUE) // $a è falso (FALSE) /* $stringa diventa 'Matteo Antonio Giovanni Giuseppe Luca Marco' */

/* Per maggiori informazioni sugli array vi invitiamo a studiare le lezioni relative. */


Funzioni sulle date Tra le funzioni native di PHP destinate alla gestione delle date troviamo: • time(): restituisce il timestamp relativo al momento in cui viene eseguita. • date(formato [,timestamp]): considera il timestamp in input (se non è indicato, prende quello attuale) e fornisce una stringa contenente la data formattata secondo le specifiche indicate al primo parametro. I valori piĂš usati, combinabili fra loro sono:


-

Y anno su 4 cifre y anno su 2 cifre n mese numerico (1-12) m mese numerico su 2 cifre (01-12) F mese testuale ('January' - 'December') M mese testuale su 3 lettere ('Jan' - 'Dec') d giorno del mese su due cifre (01-31) j giorno del mese (1-31) w giorno della settimana, numerico (0=dom, 6=sab) l giorno della settimana, testuale ('Sunday' - 'Saturday' ) D giorno della settimana su 3 lettere ('Sun' - 'Sat') H ora su due cifre (00-23) G ora (0-23)


- i minuti su due cifre (00-59) - s secondi su due cifre (00-59) • checkdate(mese, giorno, anno): verifica se i valori passati costituiscono una data valida. Restituisce un valore booleano. Esempi: //Considerando come data attuale il 01/01/2011 e come orario le 11:00: $d = date('d m Y’);

//$d sarà "01 01 2011"

$d = date(' d /m/Y);

//$d sarà "01/01/2011"

$d = date('d M y - H:i');

//$d sarà "02 Gen 11 - 11:00"


Funzioni matematiche Tra le funzioni matematiche, native di PHP, troviamo: • intval(valore): restituisce l'intero del numero passato. • sqrt(valore): calcola la radice quadrata del numero passato. • ceil(valore): arrotonda all’intero più vicino. • round(valore [,numeriDecimali]): arrotonda al numero più vicino. Il secondo parametro, opzionale, indica quanti numeri si vogliono mantenere dopo la virgola.


Esempi: $x = 3.57; intval($x);

// restituisce il valore 3

sqrt(16);

// restituisce il valore 4

$x = 16; $y = sqrt($x);

// restituisce il valore 4

$i = ceil(4.3);

// restituisce il valore 5

$i = round(3.4); $i = round(3.5); $i = round(3.6);

// restituisce il valore 3 // restituisce il valore 4 // restituisce il valore 4

$i = round(1.95583, 2); // restituisce il valore 1.96 $i = round(5.045, 2); // restituisce il valore 5.05 $i = round(5.055, 2); // restituisce il valore 5.06


Funzioni sui file Tra le funzioni native di PHP destinate alla gestione dei file troviamo: • fopen(file, tipo): Apre il file specificato nel modo specificato. Il secondo parametro indica il tipo di apertura e può assumere i seguenti valori: - r per sola lettura; - r+ per lettura e scrittura (scrive all’inizio del file); - w per sola scrittura. In caso di file esistente sovrascrive i vecchi dati; se il file non esiste viene creato.


- w+ per scrittura e lettura. In caso di file esistente sovrascrive i vecchi dati; se il file non esiste viene creato. - a per aggiungere i dati in coda a quelli già presenti (se il file non esiste viene creato) - a+ per leggere e per aggiungere i dati in coda a quelli già presenti (se il file non esiste viene creato) • fread(fileAperto):legge il file aperto. • fwrite(fileAperto, stringa): scrive la stringa passata al file aperto. • fclose(fileAperto): chiude il file precedentemente aperto. • feof(nomeFile): verifica se abbiamo raggiunto la fine del file di testo che abbiamo precedentemente aperto. Restituisce un valore booleano.


• file_exists(nomeFile): controlla se il file dato esiste. Restituisce un valore booleano. • include(nomeFile): include all’interno del nostro script il file specificato.


Esempi: $var = fopen("prova.txt","r"); $var2 = fread($var,20);

//Apre il file di nome prova.txt in sola lettura //Legge le prime 20 righe del file prova.txt aperto in sola lettura

$var=fopen("prova.txt","a+"); fwrite($var, "stringa di prova");

//Apre il file di nome prova.txt in lettura e in append //Aggiunge al file di nome prova.txt il valore “stringa di prova�

fclose($var);

//Chiude il file precedentemente aperto


Funzioni per la stampa In ultimo vengono mostrate tre funzioni molto utilizzate per stampare a video o su web. Tali funzioni sono molto utili anche come ausilio al debug.

i ÛiÊÌ ÃÊ Ì Vi]ÊÛ Ã Ì\Ê Ü° Vi °V ÉÕ V ° Ì

Ìi`ÊÜ Ì ÊÌ iÊ`i ÊÛiÀÃ Ê vÊ ÝÊ*À Ê* Ê ` Ì ÀÊ

• echo(valore da stampare): stampa il valore passato senza andare a capo. La funzione non richiede obbligatoriamente le parentesi tonde • print(valore da stampare): stampa il valore passato senza andare a capo. • print_r(valore da stampare): stampa il valore passato andando a capo.


Esempi: $stringa = “gatti”;

//Stampa: ciao a tutti

echo $stringa;

//Stampa: gatti

echo $i . “ ” . $stringa;

//Stampa: 4 gatti

print "ciao a tutti";

//Stampa: ciao a tutti

print $stringa;

//Stampa: gatti

print $i . “ ” . $stringa;

//Stampa: 4 gatti

print_r "ciao a tutti";

//Stampa: ciao a tutti e manda a capo il punta-

tore print_r $stringa;

//Stampa: gatti e manda a capo il puntatore

print_r $i . “ ” . $stringa;

//Stampa: 4 gatti e manda a capo il puntatore i ÛiÊÌ ÃÊ Ì Vi]ÊÛ Ã Ì\Ê Ü° Vi °V ÉÕ V ° Ì

echo "ciao a tutti";

Ìi`ÊÜ Ì ÊÌ iÊ`i ÊÛiÀÃ Ê vÊ ÝÊ*À Ê* Ê ` Ì ÀÊ

$i = 4;


FINE LEZIONE


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.