Resultado de Colchetes, Mas sem em Regex

Iniciado por LeandroCGMS, 24 de Fevereiro de 2019, 11:15

tópico anterior - próximo tópico

LeandroCGMS

03/02/2019, 10:02 UTC -2
Me ajudaram a resolver em outro fórum e por hora já está bom. Ainda tenho que resolver detalhes com a diferença de visualização entre um textarea e uma div, onde naquele o caracter de enter é compreendido, neste não.
Código (PHP):
function formatarPalavraBuscada($campo, $busca){
     $campoArray = explode(' ', $campo);
    $buscaArray = explode(' ', $busca);
    for($i = 0; $i < count($buscaArray); $i++){
         echo '<br><b>Palavra da vez em Busca Array: '.$buscaArray[$i].'</b><br>';
         for($j = 0; $j < count($campoArray); $j++){
             echo 'Palavra da vez em Campo Array: '.$campoArray[$j].'<br>';
             preg_match('/'.$buscaArray[$i].'/i', $campoArray[$j], $matches);
             if (count($matches) > 0)
                 print_r($matches);
            $campoArray[$j] = preg_replace('/'.$buscaArray[$i].'/i', '<span class="marca-texto" style="color: red">'.$campoArray[$j].'</span>', $campoArray[$j]);
         }
     }
     return implode(' ',$campoArray);

Edição em 25/02/2019, 12:40.
Vejam este vídeo e me digam por que este comportamento simples não acontece na função PHP.
https://drive.google.com/open?id=1eGtuYVddT-l4ePu8g50O1j8y7ihZPEIm

_________________________________________________________________________________________________


Bom dia.
Peço que não me mostrem soluções, apenas preciso saber o porquê deste código abaixo não funcionar, sempre retornando o $campoArray implodido sem as tags HTML:

function formatarPalavraBuscada($campo, $busca){
        $campoArray = explode(' ', $campo);
        $buscaArray = explode(' ', $busca);
        for($i = 0; $i < count($buscaArray); $i++){
            echo 'Palavra da vez em Busca Array: '.$buscaArray[$i].'<br>';
            for($j = 0; $j < count($campoArray); $j++){
                echo 'Palavra da vez em Campo Array: '.$campoArray[$j].'<br>';
                preg_replace('/'.$busca[$i].'/i', '<span class="marca-texto">'.$campoArray[$j].'</span>', $campoArray[$j]);
            }
        }
        return implode(' ',$campoArray);
    }