strrchr
(PHP 4, PHP 5, PHP 7, PHP 8)
strrchr — Encontra a última ocorrência de um caractere em uma string
Descrição
Esta função retorna a porção de haystack
que
inicia na última ocorrência de needle
e continua
até o final de haystack
.
Parâmetros
haystack
-
A string na qual a pesquisa será realizada.
needle
-
Se
needle
contiver mais de um caractere, apenas o primeiro será usado. Este comportamento é diferente quando comparado com strstr().Antes do PHP 8.0.0, se
needle
não for uma string, ela será convertida para um número inteiro e aplicada como o valor ordinal de um caractere. Este comportamento tornou-se defasado a partir do PHP 7.3.0 e depender dele é altamente desaconselhado. Dependendo do comportamento pretendido, o parâmetroneedle
deve ser explicitamente convertido em string ou uma chamada explícita para chr() deve ser realizada. before_needle
-
Se for
true
, strrchr() retorna a parte dehaystack
antes da última ocorrência do caractereneedle
(excluindo o caractere).
Valor Retornado
Esta função retorna a porção de uma string, ou false
se
needle
não for encontrado.
Registro de Alterações
Versão | Descrição |
---|---|
8.3.0 |
O parâmetro before_needle foi adicionado.
|
8.0.0 |
O parâmetro needle agora aceita uma string vazia.
|
8.0.0 |
Passar um int em needle não é mais suportado.
|
7.3.0 |
Passar um int em needle tornou-se defasado.
|
Exemplos
Example #1 Exemplo de strrchr()
<?php
$ext = strrchr('algum_arquivo.txt', '.');
echo "extensão do arquivo: $ext \n";
$ext = $ext ? strtolower(substr($ext, 1)) : '';
echo "extensão do arquivo: $ext";
?>
O exemplo acima produzirá algo semelhante a:
extensão do arquivo: .txt extensão do arquivo: txt
Notas
Note: Esta função é compatível com dados binários.