Salta ai contenuti

Stringhe

Una stringa e testo: un nome, un messaggio, una email, una frase.

<?php
$nome = "Luca";
$saluto = 'Ciao';

Puoi usare virgolette doppie o singole.

Con le virgolette doppie, PHP legge le variabili dentro la stringa.

<?php
$nome = "Luca";
echo "Ciao $nome";

Output:

Ciao Luca

Con le virgolette singole, il testo resta letterale.

<?php
$nome = "Luca";
echo 'Ciao $nome';

Output:

Ciao $nome

Per unire stringhe usa il punto ..

<?php
$nome = "Sara";
$messaggio = "Ciao " . $nome . "!";
echo $messaggio;

PHP offre molte funzioni per lavorare con il testo.

<?php
$testo = "Manuale PHP";
echo strlen($testo);

strlen conta i caratteri in byte. Per testi con lettere accentate puo servire mb_strlen, se l’estensione mbstring e disponibile.

Altre funzioni utili:

  • strtolower($testo) porta in minuscolo
  • strtoupper($testo) porta in maiuscolo
  • trim($testo) toglie spazi all’inizio e alla fine
  • str_replace("PHP", "web", $testo) sostituisce testo

Quando mostri testo inserito da un utente in una pagina HTML, usa htmlspecialchars.

<?php
echo htmlspecialchars($nome, ENT_QUOTES, 'UTF-8');

Questo evita che testo pericoloso venga interpretato come HTML.

Puoi prendere solo una parte di una stringa con substr.

<?php
$codice = "ORD-2026-15";
$prefisso = substr($codice, 0, 3);
echo $prefisso;

Output:

ORD

Il secondo numero indica da dove partire. Il terzo indica quanti caratteri prendere.

<?php
$email = "luca@example.com";
if (str_contains($email, "@")) {
echo "Sembra una email";
}

Questo non basta per validare davvero una email, ma mostra come controllare la presenza di una parte di testo.

Errore comune: dimenticare gli spazi nella concatenazione

Sezione intitolata “Errore comune: dimenticare gli spazi nella concatenazione”
<?php
$nome = "Luca";
echo "Ciao" . $nome;

Output:

CiaoLuca

Lo spazio va scritto esplicitamente:

<?php
echo "Ciao " . $nome;