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);
}