Ir para conteúdo
Fórum Script Brasil
  • 0

Manipulação de arquivos


mayconvm

Pergunta

Saudações !

Gente, queria saber como que eu faço pra substituir uma tag em uma página por outra.

Exemplo:

A página index.php tem um lugar aonde está escrito {Resultado}

Ai quando o script roda, ele substitui por uma frase qualquer

Como fazer isso ?

Obrigado !

Editado por Jonathan Queiroz
Não são permitidos posts em caixa alta (Jonathan)
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
NA PAGINA INDEX.PHP TEM UM LUGAR AONDE ESTA ESCRITO

{RESULTADO}

AI QUANDO O SCRIPT RODA, ELE SUBISTITUI POR UMA FRASE QUALQUER? COMO?

Usa saída buferizada:

/**
 * Manipulador da saída buferizada
 * 
 * @param string $buffer O buffer de saida
 * @return string O novo conteúdo
 */
function troca( $buffer ){
    /**
     * O conteúdo que será trocado
     * @var string
     */
    $de        = "{resultado}";
    
    /**
     * O que vamos colocar no lugar de $de
     * @var string
     */
    $para    = "Hey, mudamos em tempo de execução !!!";

    /**
     * Aqui escapamos as {, [ e ( que são reservados na expressão regular
     */
    $de = preg_replace( "/\\{/" , "\{" , $de );
    $de = preg_replace( "/\\}/" , "\}" , $de );
    $de = preg_replace( "/\\(/" , "\(" , $de );
    $de = preg_replace( "/\\)/" , "\)" , $de );
    $de = preg_replace( "/\\[/" , "\[" , $de );
    $de = preg_replace( "/\\]/" , "\]" , $de );
    
    // Fazemos a troca e retornamos
    return( preg_replace( sprintf( "/%s/" , $de ) , $para , $buffer ) );
}

ob_start( "troca" );

echo "{resultado}"; //Hey, mudamos em tempo de execução !!!

ob_end_flush();

[]'s

J. Neto

Editado por neto.joaobatista
Link para o comentário
Compartilhar em outros sites

  • 0

Moço, legal, achei algo assim:

$conteudo = "<P align=left>MAYCON VINICIUS MOREIRA</P>";

preg_match_all('/<P align=left>(.*?)<\/P>/', $conteudo, $span);
print_r($span);
Mas quando eu faço isso:
$conteudo = "<P align=left>
MAYCON VINICIUS MOREIRA
</P>";

preg_match_all('/<P align=left>(.*?)<\/P>/', $conteudo, $span);
print_r($span);

Não funciona.

Como que eu faço para pegar o que está entre "<P align=left></P>"

Link para o comentário
Compartilhar em outros sites

  • 0
MAS QUANDO EU FAÇO ISSO

$conteudo = "<P align=left>
MAYCON VINICIUS MOREIRA
</P>";
NÃO FUNCIONA.
tenta assim:
/**
 * Manipulador da saída buferizada
 *
 * @param string $buffer O buffer de saida
 * @return string O novo conteúdo
 */
function troca( $buffer ){
    /**
     * O conteúdo que será trocado
     * @var string
     */
    $de        = "\\<P\\s*align\=[^\\>]*>.*\\<\\/P\\>";

    /**
     * O que vamos colocar no lugar de $de
     * @var string
     */
    $para    = "Hey, mudamos em tempo de execução !!!";

    // Fazemos a troca e retornamos
    return( preg_replace( sprintf( "/%s/s" , $de ) , $para , $buffer ) );
}

ob_start( "troca" );

$str = "<P align=left>
MAYCON VINICIUS MOREIRA
</P>";

echo $str; //Hey, mudamos em tempo de execução !!!

ob_end_flush();

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...