PHP

Funzioni sulle stringhe

by Andrea Spera

Alcune funzioni per la manipolazione delle stringhe
substr(): Restituire parte di una stringa
Esempio pratico: anteporre ad un indirizzo internet https://, se mancante.
Codice
function startsWith($haystack, $needle)
//https://stackoverflow.com/questions/834303
	{
	$length = strlen($needle);
	return substr($haystack, 0, $length) == $needle;
	}
function add_https($myUrl)
	{
	if(startsWith($myUrl, 'www') == true)
		{
		$myUrl = 'https://' . $myUrl;
		}
	return $myUrl;
	}
echo add_https('www.bluesite.it/lozibaldoneinformatico');
Output
https://www.bluesite.it/lozibaldoneinformatico
str_replace(): Sostituire parti di una stringa
Questa funzione sostituisce tutte le occorrenze di una sottostringa con un'altra. È utile quando vuoi sostituire parti specifiche di un URL, ad esempio per cambiare "http" in "https".
Codice
function replace_http_with_https($myUrl)
	{
    return str_replace('http://', 'https://', $myUrl);
	}

echo replace_http_with_https('https://www.bluesite.it/lozibaldoneinformatico');
Output
https://www.bluesite.it/lozibaldoneinformatico
strpos(): Trovare la posizione di una sottostringa
Questa funzione trova la posizione della prima occorrenza di una sottostringa all'interno di una stringa. È utile per verificare se una parte dell'URL esiste (ad esempio, verificare se "www" è presente).
Codice
function has_www($myUrl)
	{
    return strpos($myUrl, 'www.') !== false;
	}

echo has_www('www.bluesite.it/lozibaldoneinformatico') ? 'Contains www' : 'No www';
Output
Contains www
parse_url(): Analizzare e manipolare un URL
Questa funzione scompone un URL in componenti come schema, host, percorso, ecc. È molto utile per operazioni complesse di manipolazione degli URL.
Codice
function add_https_if_missing($myUrl)
	{
    $parsedUrl = parse_url($myUrl);

    // Se manca lo schema, aggiungiamo 'https'
    if (empty($parsedUrl['scheme'])) {
        $myUrl = 'https://' . $myUrl;
		}

    return $myUrl;
	}

echo add_https_if_missing('www.bluesite.it/lozibaldoneinformatico');
Output
https://www.bluesite.it/lozibaldoneinformatico
rtrim(): Rimuovere caratteri finali indesiderati
Questa funzione rimuove spazi o caratteri specifici dalla fine di una stringa. Puoi usarla, ad esempio, per rimuovere eventuali "/" finali da un URL.
Codice
function remove_trailing_slash($myUrl)
	{
    return rtrim($myUrl, '/');
	}

echo remove_trailing_slash('https://www.bluesite.it/lozibaldoneinformatico/');
Output
https://www.bluesite.it/lozibaldoneinformatico