Remover último caractere PHP

Remover últimos caracteres de uma string com PHP

O caso mais frequente em que precisamos remover útimos caracteres é esse:

Temos aqui um array:

$array = [5, 10, 20, 30, 40, 50, 75, 100];

Agora suponhamos que precisamos colocar cada um desses valores dentro de um elemento HTML com um separador, para isso vamos usar o foreach.

foreach($array as $value) {
    echo '<code>item '.$value.'</code> - ';
}

Resultado:
item 5 - item 10 - item 20 - item 30 - item 40 - item 50 - item 75 - item 100 - 

Fica não só um hífen no fim, mais também dois espaços em branco que também são strings

Agora vamos acertar isso

$array = [5, 10, 20, 30, 40, 50, 75, 100];
$result = '';
foreach($array as $value) {
    $result .=  '<code>item '.$value.'</code> - ';
}
echo substr($result, 0, -3);

Resultado:
item 5 - item 10 - item 20 - item 30 - item 40 - item 50 - item 75 - item 100

Reparem na função substr que o último parametro é -3. Que removeu o hífen + os dois espaços

Obs.: Se colocar a função substr dentro do foreach irá remover o espaço e hífens de todos os itens do array.

Essa não é a unica função auxiliar nem a única maneira para fazer isso. Mas no geral é o melhor na minha opinião. Sem contar que existes diversos casos e divergências, mais nada sem solução.
Se isso não resolveu o seu caso e não encontrou nada do tipo que você precise na web, deixe seu comentário que estarei a disposição para ajudar.

Categorias: PHP