back to top

PHP str_replace() – effettuare sostituzioni all’interno di una stringa

La funzione str_replace di PHP รจ utilizzata per sostituire tutte le occorrenze di una stringa all’interno di un’altra stringa. Questa funzione รจ molto versatile e puรฒ essere applicata a vari scenari di manipolazione delle stringhe.

La sintassi di str_replace()

La sintassi della funzione รจ la seguente:

str_replace(cerca, sostituisci, dove_cercare)

Vediamo un esempio:

echo str_replace("mela", "pera", "Paolo mangia la mela");

L’output prodotto sarร :

Paolo mangia la pera

Nell’esempio sopra, la stringa “mela” viene cercata all’interno della stringa “Paolo mangia la mela” e sostituita con la parola “pera”. Il risultato finale รจ “Paolo mangia la pera”.

Sostituzioni multiple con str_replace()

La funzione str_replace puรฒ accettare anche array come argomenti per effettuare sostituzioni multiple in una sola chiamata. Vediamo un esempio:

$testo = "I miei amici Luca, Paolo e Claudio sono al mare";
$cerca = array("Luca", "Paolo", "Claudio");
$sostituisci = array("Max", "Roberto", "Alex");
echo str_replace($cerca, $sostituisci, $testo);

L’output restituito sarร :

I miei amici Max, Roberto e Alex sono al mare

In questo caso, la funzione ha sostituito ogni nome all’interno dell’array $cerca con il corrispondente nell’array $sostituisci.

Differenze tra str_replace() e str_ireplace()

รˆ importante notare che str_replace รจ case-sensitive, ossia distingue tra maiuscole e minuscole. Ad esempio:

echo str_replace("mela", "pera", "Paolo mangia la Mela");

In questo caso, la stringa “Mela” con la “M” maiuscola non verrร  sostituita, e l’output sarร :

Paolo mangia la Mela

Se si desidera effettuare sostituzioni senza distinguere tra maiuscole e minuscole, si puรฒ utilizzare la funzione str_ireplace(), che funziona in modo analogo ma non รจ case-sensitive. Esempio:

echo str_ireplace("mela", "pera", "Paolo mangia la Mela");

L’output sarร :

Paolo mangia la pera

Esempi pratici di utilizzo di str_replace()

Sostituzione con una stringa vuota

Se desideri eliminare una specifica stringa o carattere dalla tua stringa di origine, puoi sostituirlo con una stringa vuota. Ad esempio:

$text = "Questo รจ un esempio di testo con una parola indesiderata.";
$nuovo_testo = str_replace("indesiderata", "", $text);
echo $nuovo_testo;

L’output prodotto sarร :

Questo รจ un esempio di testo con una parola.

Sostituzione di testo in una stringa multilinea

La funzione str_replace puรฒ essere utilizzata per sostituire del testo anche in una stringa che contiene piรน righe. Ad esempio:

$text = "Questo รจ un esempio di testo.\nPuรฒ contenere piรน righe.\nSostituiamo la parola 'righe' con 'linee'.";
$nuovo_testo = str_replace('righe', 'linee', $text);
echo $nuovo_testo;

L’output sarร :

Questo รจ un esempio di testo.
Puรฒ contenere piรน linee.
Sostituiamo la parola 'linee' con 'righe'.

Sostituzione di caratteri speciali

La funzione str_replace puรฒ essere utilizzata per sostituire caratteri speciali o escape sequence all’interno di una stringa. Ad esempio, per sostituire il carattere di nuova linea (“\n”) con uno spazio, puoi fare:

$text = "Questa\nรจ\nuna\nstringa\ncon\nnuove\nlinee";
$nuovo_testo = str_replace("\n", " ", $text);
echo $nuovo_testo;

L’output sarร :

Questa รจ una stringa con nuove linee

In questo esempio, il carattere di nuova linea “\n” รจ stato sostituito con uno spazio, creando cosรฌ una stringa senza interruzioni di riga.

Utilizzo di array associativi per sostituzioni personalizzate

Quando si desidera effettuare sostituzioni personalizzate basate su valori specifici, รจ possibile utilizzare un array associativo come argomento per la funzione str_replace. Ad esempio:

$text = "Il prezzo del prodotto รจ {prezzo} โ‚ฌ.";
$replacements = array('{prezzo}' => '19.99');
$nuovo_testo = str_replace(array_keys($replacements), array_values($replacements), $text);
echo $nuovo_testo;

L’output prodotto sarร :

Il prezzo del prodotto รจ 19.99 โ‚ฌ.

In questo esempio, la variabile {prezzo} all’interno della stringa รจ stata sostituita con il valore 19.99.

Pubblicitร 
Massimiliano Bossi
Massimiliano Bossi
Stregato dalla rete sin dai tempi delle BBS e dei modem a 2.400 baud, ho avuto la fortuna di poter trasformare la mia passione in un lavoro (nonostante una Laurea in Giurisprudenza). Adoro scrivere codice e mi occupo quotidianamente di comunicazione, design e nuovi media digitali. Orgogliosamente "nerd" sono il fondatore di MRW.it (per il quale ho scritto centinaia di articoli) e di una nota Web-Agency (dove seguo in prima persona progetti digitali per numerosi clienti sia in Italia che all'estero).

Leggi anche...

Correggere l’errore the uploaded file exceeds the upload_max_filesize directive in php.ini

L'errore the uploaded file exceeds the upload_max_filesize directive in...

Cannot modify header information – headers already sent: come risolvere l’errore PHP

L'errore di PHP cannot modify header information - headers...

Ricavare l’estensione di un file con PHP

Quando si lavora con i file in un'applicazione web,...

GD Library: creazione, manipolazione e ridimensionamento immagini con PHP

Le librerie GD (o GD Library), sono componenti fondamentali...

PHP: impostare il fuso orario italiano

Le tue pagine PHP non mostrano l’orario corretto? Probabilmente...
Pubblicitร