# Funzioni PHP: come creare blocchi di codice riutilizzabili

Utilizzando una funzione PHP, è possibile **richiamare lo stesso blocco di codice più volte** invece di copiarlo. In questo modo si risparmia fatica e si riduce la probabilità di errori.

## Cosa sono le funzioni PHP?

Le funzioni PHP sono **blocchi di codice nominati** che eseguono istruzioni specifiche o in serie. Esse svolgono un ruolo essenziale nella programmazione strutturata e dividono il codice PHP in unità più piccole e riutilizzabili. PHP mette a disposizione una serie di funzioni predefinite per alcune delle operazioni più comuni, come lavorare con stringhe, array o [cicli PHP](https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/cicli-php/). È inoltre possibile creare funzioni personalizzate per implementare operazioni specifiche nelle applicazioni.

## Qual è la differenza tra le funzioni PHP interne e quelle definite dall’utente?

Le **funzioni interne** sono già integrate nei linguaggi di programmazione. Molte di esse sono parte integrante della libreria del linguaggio e sono immediatamente disponibili per lo sviluppo, senza richiedere ulteriori passaggi. Altre possono essere utilizzate solo dopo l’installazione di estensioni speciali. Le funzioni interne di PHP sono progettate per eseguire in modo efficiente compiti comuni e operazioni di uso frequente. Un esempio tipico è la funzione strlen(), che restituisce la lunghezza di una stringa. Queste funzioni sono solitamente ottimizzate per garantire prestazioni elevate.

Al contrario, le **funzioni definite dall’utente sono sezioni di codice scritte autonomamente**. Devono essere definite esplicitamente all’interno del codice. Queste funzioni PHP hanno spesso casi d’uso specifici o risolvono problemi all’interno di un progetto software. Le funzioni definite dall’utente possono contenere algoritmi complessi o manipolare dati. Un buon esempio sono le funzioni personalizzate che utilizzano PHP per recuperare informazioni da un database MySQL e poi le formattano per visualizzarle su una pagina web.

Consiglio Con [Deploy Now](https://www.ionos.it/hosting/deploy-now "Deploy Now di IONOS") di IONOS, puoi contare su una piattaforma affidabile per i tuoi progetti di sviluppo. L’integrazione con il tuo repository GitHub consente inoltre di distribuire senza problemi le modifiche al codice.

## Struttura di una funzione PHP

Le funzioni PHP personalizzate seguono uno schema ben preciso. Questa è la struttura di base:

```php
function functionName(parameter1, parameter2, ...) {
    // php function example code block
    return result; // optional
}
```

Di seguito riportiamo una spiegazione delle diverse parti di una funzione PHP:

- **function**: questa parola chiave segnala l’inizio della definizione della funzione.
- **functionName**: il nome della funzione. Deve essere unico e descrivere lo scopo della funzione.
- **parameter1, parameter2, …**: i parametri sono valori che vengono passati alla funzione PHP quando viene chiamata. Sono opzionali ed è possibile utilizzarne quanti se ne vogliono.
- **code block**: il codice esegue il compito o le operazioni desiderate.
- **return result**: questa parte è facoltativa. L’istruzione return viene utilizzata quando la funzione deve restituire un risultato.

Le funzioni interne non devono essere definite. È possibile chiamarle direttamente tramite il loro identificatore.

Consiglio Per chi è agli inizi con la programmazione in PHP, consigliamo il nostro [tutorial PHP](https://www.ionos.it/digitalguide/siti-web/creare-siti/imparare-a-programmare-in-php-tutorial-per-principianti/). Se ancora non hai la certezza che PHP sia il linguaggio di programmazione giusto per te, puoi dare un’occhiata ai nostri confronti [PHP contro Python](https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/php-vs-python/) e [PHP contro JavaScript](https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/php-o-javascript/).

## Esempi di utilizzo delle funzioni PHP

Di seguito ti presentiamo degli esempi di usi pratici delle funzioni PHP.

### Assegnare valori predefiniti ai parametri

Puoi impostare valori predefiniti per i parametri delle funzioni PHP specificando il **valore predefinito desiderato direttamente nella definizione della funzione**. Se viene fornito un valore per questo parametro quando si chiama la funzione, verrà preso il valore predefinito.

```php
function greet($name = "Tim") {
    echo "Hello, $name";
}
greet(); // Output: "Hello, Tim"
greet("Max"); // Output: "Hello, Max"
```

### Passare i parametri per riferimento

Il passaggio dei parametri a una funzione avviene “per valore” o “per riferimento”. “Per valore” significa che viene utilizzata una copia del valore e le modifiche non hanno alcun effetto sul valore originale al di fuori della funzione. Nel passaggio “per riferimento”, invece, **viene passata alla funzione la variabile effettiva** e le modifiche all’interno della funzione influiscono sul valore originale. Questo viene fatto anteponendo il simbolo &amp; alla definizione della funzione.

```php
function incrementByOne(&$num) {
    $num++;
}
$val = 5;
incrementByOne($val);
echo $val; // Output: "6"
```

Qui definiamo la funzione **incrementByOne** con il parametro `$num` passato come riferimento. Il post-incremento appartiene agli [operatori PHP](https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/operatori-php/) e incrementa numeri o stringhe di 1. Quando viene chiamata la funzione PHP, il valore di `$val` aumenta da 5 a 6, perché il passaggio per riferimento apporta modifiche esterne alla funzione.


This is a markdown version of: [https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/funzioni-php/](https://www.ionos.it/digitalguide/siti-web/programmazione-del-sito-web/funzioni-php/) for AI/LLM consumption.