Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
salve galera... seguinte
eu tenho 2 arquivos, exemplo:
home1.php
<?php
$text = "Lorem ipsum";
?>
ai eu tenho outro arquivo chamado "home2.php", neste cara eu quero resgatar a variavel que esta la no "home1.php" mas isso sem dar um include, pois la no home1.php vai ter HTML, funções e tudo mais, e se eu der um include no meu home2.php vai ser exibido estes HTMLs e vai ser execultada essas funções, e isso ñ pode.. como fazer isto? ñ pode ser com include né? ou tem alguma maneira de tipo eu "herdar" a home1.php e poder usar todas as funções e variaveis na minha home2.php ... lembrando que nenhum dos 2 arquivos pode ser uma classe
ou então, uma outra possibilidade seria...
eu tenho um arquivo home1.php que dentro dele tem uma variavel $masterPage, se esta variavel não existir , eu continuo e incluo este mesmo arquivo, mas se esta variavel existir eu quero incluir o que esta nela, sendo por exemplo $masterPage = "index.php";
meio bagunçado , mas acho que deu para entender...
Porque nao usa session ? :D
intom, ñ é o caso de usar session.. porque eu preciso literalmente incluir um arquivo sem que ele seja exibido, pois a ideia e quebrar este cara em partes para poder montar ele novamente em um Layout, ou MASTER PAGE...
eu ja encontrei a solução, eu estou usando o ob_start(0;
ficando assim:
ob_start();
include("arquivo.php");
$contents = ob_get_contents();
ob_end_clean();
assim eu consigo incluir meu arquivo jogar todo o seu conteudo em uma variavel e depois dar um clear para ñ mostrar nada na tela...
isso resolveu meu problema! ^^, mas valew mesmo assim!!
Opa!!
Dá pra fazer assim:
home1.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
Como você pode ver, é um arquivo php com HTML, provavelmente como o seu. Tem variáveis, tem função, tem HTML... e por aí vai.
Agora no seu outro arquivo, faça assim:
home2.php
<?php
ob_start(); // inicia o buffer de memória
include 'home1.php';
$conteudo = ob_get_contents(); // guarda o conteúdo do arquivo na variável (parseado normal).
ob_end_clean(); // limpa a memória.
/*
Pronto, agora você pode acessar qualquer variável ou função do seu arquivo incluído. Note que a variável $exemplo
foi definida em home1.php e se você imprimi-la obterá seu valor.
*/
As funções também podem ser chamadas normalmente. É isso!!
Abraço.