Bom dia a todos!
Estou iniciando em PHP, então talvez isso seja uma pergunta burra. Estou utilizando uma plataforma que fornece um array de categorias como digitado abaixo, e minha ideia é fazer uma busca no conteúdo por essas categorias, e substituir elas por outro array, que no caso terá as mesmas categorias, no entanto, com links. Veja:
$conteudo = "Meu conteúdo Filmes Laranja e Verde. Blackout.";
$from = array(
0 => "Laranja",
1 => "Azul",
2 => "Vermelho",
3 => "Verde",
4 => "Black"
);
$to = array(
0 => "<a href='#laranja'>Laranja</a>",
1 => "<a href='#azul'>Azul</a>",
2 => "<a href='#vermelho'>Vermelho</a>",
3 => "<a href='#verde'>Verde</a>",
4 => "<a href='#ver'>Black</a>"
);
$novoconteudo = strtr($conteudo, array_combine($from, $to));
echo $novoconteudo;
O máximo que conseguir fazer foi usando strtr, no entanto acaba fazendo algumas substituições "burras", como por exemplo adicionar link em "Black" quando na verdade a palavra é "Blackout". Acredito que para resolver isso, deveria ser feito com preg_replace, porém já tentei e não consegui. Alguém pode me ajudar?
Veja: http://sandbox.onlinephpfunctions.com/code/e7cfd27ea182041de0519df3ed22bedc93cda18b