How to search keywords in a Json

Asked

Viewed 78 times

2

I have a JSON returning me the following fields:

{
 "titulo": 'Primeiro contato',
 "texto": 'Olá gostaria de fazer uma sugestão para vocês'
}

I’m trying to do the following check

foreach ($data as $msg) {
                $titulo = $msg->titulo;
                $texto = $msg->texto;
                $termo = 'contato';

            if (strpos( $titulo , $termo) === false) {
                echo 'Não encontrado';
             } else {
                echo 'Encontrado';
             }
}

In this way he returns only the words of the title and looks for only one word at a time. I want to search for more than one word in both the title and text of msg

1 answer

1


You can use a for to scroll through an array of keywords

    foreach ($data as $msg) {
            $titulo = $msg->titulo;
            $texto = $msg->texto;
            $termo = ["contato", "sugestão"];
            $count = count($termo);

        for($i = 0; $i < $count; $i++){
            $pos = stripos( $titulo , $termo[$i]);
            $pos2 = stripos($texto , $termo[$i]);
            if (($pos !== false ) || ($pos2 !== false)) {
                echo "Encontrado."
             } else {
                echo "Não Encontrado."
             }
        }

    }

Browser other questions tagged

You are not signed in. Login or sign up in order to post.