Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

djthyrax

[PHP]lastIndexOf

Mensagens Recomendadas

djthyrax    11
djthyrax

Assim quick and dirty para o zeroonnet no IRC:

function lastIndexOf($substr, $str){
    if(false !== ($r = strpos(strrev($str), strrev($substr)))) return strlen($str)-$r-strlen($substr);
    return false;
}

Retorna false quando $substr não existe em $str.

(Originalmente era só strlen($str)-strpos(strrev($str), strrev($substr))-strlen($substr);, mas dá jeito prevenir contra eventualidades :P

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
djthyrax    11
djthyrax

Como queremos pesquisar do final para o inicio e o strpos faz do inicio para o fim, fazemos reverse à needle e ao keystack. Como a posição retornada é a contar do fim para o inicio da string original, é fazer strlen($str)-$r para ter a posição a seguir ao último char da $substr na $str, bastando tirar de lá o strlen($substr) para termos do 1o char. :P

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita a nossa Política de Privacidade