2014-10-01 103 views
0

我有一個使用php包含文件$ content來顯示頁面主要內容的模板。我想要根據內容更改頁面標題。我可以在包含的$ content php文件中聲明$ pagetitle,但問題是在佈局中,內容是在pagetitle之後加載的。如何在包含文件之前獲取php變量

我不想每次加載頁面時都要從代碼中設置$ pagetitle,我寧願將它放在相關的內容文件中,以便每次包含頁面時都會自動設置它。我怎樣才能做到這一點?

<div class="container"> 
     <main class="content"> 
      <div id="ctopspace"><h2><?php echo $pagetitle;></h2></div> 
      <div id="cleftspace"></div>    
      <?php include $content;?> 
     </main><!-- .content --> 
    </div><!-- .container--> 
+0

將你的整個'.content'類的'$內容「包括? – jeroen 2014-10-01 18:43:04

+0

您可以使用$ _GET找出您當前的位置。這假設你正在使用某種路由系統。 – 2014-10-01 18:43:10

回答

1

您可以包括你的文件上面的所有其他代碼和echo你在你的包含文件中做了

$content = file_get_contents(your_content_file); 

各自的內容和標題的變量之後。

<?php include $contentFile ?> 

//...later in the code 

<h2><?= $pagetitle; ?></h2> 
<div id="cleftspace"></div>    
<?= $content; ?> 

注:<?=<?php echo開短標籤。它可能會在您的服務器上被禁用。

+0

謝謝我不確定我完全理解。我的代碼中的$ content指的是一個帶有html的php文件。如果我在代碼上面包含它,它會在錯誤的地方輸出html。 – dlofrodloh 2014-10-01 18:56:04

+0

編號(感謝您的評論。)您應該只將整個php文件保存在一個變量中並在需要時輸出。 – loveNoHate 2014-10-01 18:57:51

+0

酷,很多謝謝 – dlofrodloh 2014-10-01 19:04:30

0

之前

file_put_contents('page-title.txt', $pagetitle); 

,並在$內容文件

<h2><?php echo @file_get_contents('page-title.txt'); ?></h2> 

PS:@只是跳過file_exists步驟)