如何自动将相同的页眉,页脚和布局放到此PHP代码生成的每个页面上?

时间:2019-03-09 16:57:35

标签: php html

这是我的代码

<?php
$myFile = "hidata.txt";
$fh = fopen($myFile, 'r');
$counter = 1;
$page = 2;

while(false !== ($theData = fgets($fh))) {
    if ( $counter > 10){
         file_put_contents( '/i', $page.".php", '<li>' . $theData . '</li>' . PHP_EOL, FILE_APPEND  );
       if ($counter == 20){
               $counter=10;
               $page++;
       }
    }else{
    echo ('<li>' . $theData . '</li>');
   }
   $counter++;
}
fclose($fh);
?>

每次hidata.txt到达超过10,20,30 ...行文本时,此代码都会自动生成新的.php页面。我希望每个生成的页面自动具有相同的页眉,页脚和布局。如何在这段代码中做到这一点?

修改:我尝试了一下,但是没有用

<?php
    $myFile = "hidata.txt";
$fh = fopen($myFile, 'r');
$counter = 1;
$page = 2;
$newpage = true;


while(false !== ($theData = fgets($fh))) {
    if ( $counter > 10){
        if ($newpage) {
            file_put_contents(..... $header .....);
            $newpage = false;
        }
        file_put_contents( '/i', $page.".php", '<li>' . $theData . '</li>' . PHP_EOL, FILE_APPEND  );
        if ($counter == 20){
            $counter=10;
            $page++;
            $newpage = true;

        }
    }else{
        echo ('<li>' . $theData . '</li>');
    }
    $counter++;
}
fclose($fh);
?>

编辑2:这是我的hidata.txt

data1
data2
data3
data4
data5

以此类推

这是我的header.php

<h1>Test</h1>

1 个答案:

答案 0 :(得分:0)

[编辑-示例代码]

$page = 2;
$newpage = true;


while(false !== ($theData = fgets($fh))) {
    if ( $counter > 10){
         if ($newpage) {
            file_put_contents(..... $header .....);
            $newpage = false;
            }
         file_put_contents( '/i', $page.".php", '<li>' . $theData . '</li>' . PHP_EOL, FILE_APPEND  );
       if ($counter == 20){
               $counter=10;
               $page++;   
               $newpage = true;

       }

[原始]

您可以添加如下代码:

if ( $counter > 10){  

 /********** YOUR CODE HERE *****/
  if (first putfor this page) {
      file_put_contents('/i',$page.".php",$header . PHP_EOL, FILE_APPEND);
    }
/*******                  *****/  

     file_put_contents( '/i', $page.".php", '<li>' . $theData . '</li>' . PHP_EOL, FILE_APPEND  );

Similary,在$page++;时附加“页脚”。您必须在fclose之前检查是否已写入最后的页脚。

$header可以是require_once("header.php")之类的字符串,也可以是file_get_contents的结果,具体取决于您的需求。同上页脚。