Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Dúvida no Ex. 1 da Aula 4 - Validação customizada e mensagens em português

Na vídeo aula, o Instrutor Guilherme usa a seguinte condição para saber se tem a palavra 'melhor' ou não:

public function nao_tenha_a_palavra_melhor($nome) { $posicao = strpos($nome, "melhor"); if($posicao !== FALSE) { return TRUE; } else { $this->form_validation->set_message("nao_tenha_a_palavra_melhor", "O campo '%s' não pode conter a palavra 'melhor'"); return FALSE; }

Eu li na documentação do PHP e a função strpos retorna FALSE caso não seja encontrado a string que foi dada na função.

No meu raciocínio quando strpos retornar TRUE significa que ele achou a palavra 'melhor' na string, ou seja, no caso do exercício, já que eu achei a palavra eu tenho que tratar isso. Mas no exercício o professor simplesmente pede pra retornar TRUE, e só trata o caso no ELSE.

Alguém consegue me ajudar ?

1 resposta
solução!

Coloquei o if dessa maneira e funcionou: public function nao_tenha_a_palavra_melhor($nome) { $posicao = strpos($nome, "melhor"); if($posicao === false) { return TRUE; } else { $this->form_validation->set_message("nao_tenha_a_palavra_melhor", "O campo '%s' não pode conter a palavra 'melhor'"); return FALSE; } }

Dessa maneira acho que faz mais sentido.