giovedì 18 ottobre 2018

Rimuovere separatore di troppo in php

Ti è mai capitato di generare una sorta di file csv tramite php e di dover utilizzare un contatore per capire quale è l'ultimo valore di un loop, e non mettere così alla fine il punto e virgola?
A me si, e spesso anche :p
Bene, e se ti dicessi che c'è una funzione php che può farti risparmiare qualche riga di codice? Una funzione che nasce per altri scopi e che può servire anche per rimuovere caratteri specifici alla fine di una stringa.

Bene allora, bando alle ciance e vediamo subito con un po' di codice di capire di che cosa sto parlando.


Come rimuovere un separatore di troppo con il php


Prendiamo il caso sopraccitato.
Se ad esempio con un loop hai generato una lista di nomi separata da un punto e virgola, o più in generale una lista di valori, e non ti sei preoccupato di piazzare il separatore anche all'ultimo valore in elenco, e questo può essere un problema per successivi loop after explode, ecco cosa devi fare per risolvere subito la questione:

<?
    $stringa="nome;cognome;stato;regione;telefono;";
    echo rtrim($stringa,";");
?>


La funzione php che con un colpo solo rimuove l'ultimo separatore indesiderato è la potentissima rtrim.
In pratica con questo comando, a cui passi la stringa da pulire ed il carattere (anche stringa) da eliminare, puoi far sparire l'ultimo punto e virgola di destra.
Tutto molto più semplice, no?

Se invece vuoi far sparire il primo separatore presente in una stringa, ti basta un ltrim ed il gioco è fatto.

Piaciuto l'articolo? Lascia un commento!

EmoticonEmoticon