0Pricing
PHP Academy · Lezione

Cercare e sostituire nelle stringhe

Trovare e sostituire testo con strpos, str_replace e str_contains.

Cercare e sostituire nelle stringhe è una lezione PHP Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento PHP Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso PHP Academy include 4 lezioni in totale.

Ricerca di testo nelle stringhe

PHP offre molte funzioni per individuare le sottostringhe. Funzioni principali:

  • strpos() — trova la posizione della prima occorrenza
  • strrpos() — trova la posizione dell'ultima occorrenza
  • str_contains() — disponibile da PHP 8, verifica l'esistenza
  • str_starts_with() / str_ends_with() — disponibili da PHP 8

strpos()

Restituisce la posizione (con indice a partire da 0) della prima occorrenza oppure false se non viene trovata:

<?php
$str = 'the quick brown fox';

$pos = strpos($str, 'brown');
echo $pos;  // 10

// Always use === to check for false (0 is also falsy!)
if (strpos($str, 'quick') !== false) {
    echo 'Found!';
}

str_contains, str_starts_with, str_ends_with

PHP 8 aggiunge queste semplici funzioni booleane:

<?php
$email = 'user@example.com';

var_dump(str_contains($email, '@'));        // true
var_dump(str_starts_with($email, 'user'));  // true
var_dump(str_ends_with($email, '.com'));    // true
var_dump(str_ends_with($email, '.org'));    // false

str_replace()

Sostituire tutte le occorrenze di una stringa cercata con una sostituzione:

<?php
$template = 'Hello {name}, your order #{id} is ready.';

$result = str_replace(
    ['{name}', '{id}'],
    ['Alice',  '4521'],
    $template
);

echo $result;
// Hello Alice, your order #4521 is ready.

str_ireplace() — senza distinzione tra maiuscole e minuscole

str_ireplace() funziona come str_replace(), ma non distingue tra maiuscole e minuscole:

<?php
$text = 'PHP is great. php is powerful. PHP is fun.';

$result = str_ireplace('php', 'PHP 8', $text);
echo $result;
// PHP 8 is great. PHP 8 is powerful. PHP 8 is fun.

substr_replace()

Sostituire una parte di una stringa in base alla posizione e alla lunghezza:

<?php
$str = 'Hello World';

echo substr_replace($str, 'PHP', 6, 5);
// Hello PHP

// Replace from end
echo substr_replace($str, '!', -1);
// Hello Worl!

substr_count()

Contare quante volte compare una sottostringa:

<?php
$text = 'to be or not to be';

echo substr_count($text, 'be');   // 2
echo substr_count($text, 'to');   // 2
echo substr_count($text, 'or');   // 1

preg_replace() — sostituzione con espressioni regolari

Usare un'espressione regolare per le sostituzioni complesse:

<?php
$html = '<p>Hello <b>World</b></p>';

// Strip HTML tags
$plain = preg_replace('/<[^>]+>/', '', $html);
echo $plain;  // Hello World

// Replace multiple spaces with one
$spaced = 'too   many    spaces';
echo preg_replace('/\s+/', ' ', $spaced);
// too many spaces

htmlspecialchars per prevenire gli attacchi XSS

Effettuare sempre l'escape dell'input dell'utente prima di inserirlo nell'HTML, per prevenire gli attacchi XSS:

<?php
$userInput = '<script>alert("hacked")</script>';

// Dangerous:
echo $userInput; // executes script!

// Safe:
echo htmlspecialchars($userInput, ENT_QUOTES, 'UTF-8');
// &lt;script&gt;alert(&quot;hacked&quot;)&lt;/script&gt;

Conteggio delle sostituzioni

str_replace() può indicare quante sostituzioni sono state effettuate tramite il quarto parametro opzionale:

<?php
$text = 'cat and cat and cat';
$count = 0;
$result = str_replace('cat', 'dog', $text, $count);

echo $result;  // dog and dog and dog
echo $count;   // 3

Riempimento delle stringhe

Riempire una stringa fino alla lunghezza desiderata per la formattazione:

<?php
echo str_pad('42', 8);           // '42      ' (right-pad)
echo str_pad('42', 8, '0', STR_PAD_LEFT);  // '000042'
echo str_pad('PHP', 7, '-', STR_PAD_BOTH); // '--PHP--'

Verifica rapida

Quale funzione di PHP 8 verifica se una stringa inizia con un determinato prefisso?

Riepilogo: ricerca e sostituzione

Funzioni principali:

  • strpos/strrpos — trova la posizione (verificare con === false)
  • str_contains/starts_with/ends_with — funzioni booleane di PHP 8
  • str_replace/str_ireplace — sostituzione semplice
  • preg_replace — sostituzione basata su espressioni regolari
  • htmlspecialchars — effettua l'escape per l'output HTML

Domande Frequenti

La lezione «Cercare e sostituire nelle stringhe» è gratuita?

Sì — il testo completo di «Cercare e sostituire nelle stringhe» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso PHP Academy, passa a CoddyKit PRO. Il corso PHP Academy include 4 lezioni in totale.

Cosa imparerò in «Cercare e sostituire nelle stringhe»?

Trovare e sostituire testo con strpos, str_replace e str_contains. Eserciti PHP Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare PHP Academy?

Non è richiesta alcuna esperienza precedente. PHP Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.

Quanto tempo richiede la lezione «Cercare e sostituire nelle stringhe»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione PHP Academy?

Sì. Ogni lezione PHP Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Fondamenti delle stringhe e concatenazione
  2. Cercare e sostituire nelle stringhe
  3. Funzioni per sottostringhe e padding
  4. Divisione e unione delle stringhe
← Torna a PHP Academy