Como descobrir e remover a barra no final de um URL com PHP
- Detalhes
- Angelo Luis Ferreira
- PHP
- Acessos: 2895
Neste tutorial vamos mostrar de forma bem simples como identificar se um URL possui barra (/) no final e como remove-la do link de endereço, usando a linguagem PHP. Muito útil para aplicações PHP que precisam padronizar campos com URL's sem a barra no final.
Veja também o artigo Como excluir o primeiro e o último caractere de uma string em PHP.
Observações:
a) A função PHP que utilizaremos nos códigos do tutorial é o substr que retorna uma substring contendo apenas uma parte da string original.
b) É possível também remover o último caractere de uma string utilizando a função rtrim(). Leia Como remover espaços em branco no início e no final de uma string - PHP.
1. Usando a função substr()
1.1. A função substr() retorna parte de uma string. Veja sintaxe abaixo:
Sintaxe:
substr($string, $start, $length)
Parâmetros:
$string = É o string que contém o URL. Valor obrigatório.
$start = É a posição inicial do substring (parte que deve ser retornada). Valor obrigatório.
- Se $start não for negativo, a substring retornada irá começar no caractere $start a partir do início da string, começando com 0 (zero).
- Se $start for negativo, a substring retornada irá começar no caractere $start a partir do fim da string, começando com -1.
$length = Identifica o comprimento da substring. Valor opcional.
- Se $length for omitido, uma substring iniciando em $start será retornada, ou seja, a função retorna uma substring com apenas 1 caractere.
- Se $length for negativo, então esta quantidade de caracteres será omitida a partir do final da substring retornada.
- Se $length for informado como 0, false ou null, uma string vazia será retornada.
1.2. No exemplo abaixo, vamos retornar o último caractere de uma string e retornar uma substring sem o último caractere.
<?php
$rest = substr("abcdef", -1); // retorna "f"
$rest = substr("abcdef", 0, -1); // retorna "abcde"
$url = substr("https://www.visualdicas.com.br/", -1); // retorna "/"
$url = substr("https://www.visualdicas.com.br/", 0, -1); // retorna "https://www.visualdicas.com.br"
2. Identificando e removendo a barra no final do URL usando substr()
2.1. Vamos neste exemplo verificar se o URL possui barra no final. Se sim, a barra no final será removida. Utilizaremos para isso a função substr().
<?php
$url = "https://visualdicas.com.br/"; // atribuir um url na variável $url
if (substr($url, -1) == "/") { // verifica se existe barra no final do url
$url = substr($url, 0, -1); // remove a barra no final do string url
}
// mostra o url sem a barra no final
echo "Mostra URL sem barra no final: <b>{$url}</b>";
Para testar os exemplo mostrado acima, acesse: Squids Editor PHP. Clique no botão [Run].
Documentação Oficial
1. [Documentação PHP - função substr()] » Sobre a função da substr(): retorna parte de uma string".
Cursos
Aprenda a ser um programador mais do que completo (Pacote Full Stack)