Heim  >  Artikel  >  Backend-Entwicklung  >  怎么生成静态页面

怎么生成静态页面

WBOY
WBOYOriginal
2016-06-23 14:03:36991Durchsuche

比方说



    require_once('gongxiang.php');
    $con = lianjie();
       
     $result = mysql_query("SELECT * FROM tupianwenzi left join detail on tupianwenzi.xiaofenleiindex = detail.xiaofenleidetail");

     while($row = mysql_fetch_array($result))
     {
     





    echo'


  • 怎么生成静态页面

    '.$row['xiaofenleiindex'].'



  • ';

     }
    ?>
       mysql_close($con);
     ?>




这个代码 用什么方法生成静态页面 最好 最快


回复讨论(解决方案)

无解。。。生成不了

生成不了?????

我觉得 直接把 最终的网页源代码复制出来最快了啊 PHP有没有这种写法。。

在文件开始出加入

<?phpfunction callback($buffer) {  file_put_contents('你需要的文件名', $buffer);  return $buffer; //不需显示页面内容就 return '';}ob_start("callback");?>

function callback($buffer) {
  file_put_contents('111.html', $buffer);
  return $buffer; //不需显示页面内容就 return '';
}
ob_start("callback");
?>
echo'wee';
?>

这样写 不会生成111.html        

function callback($buffer) {
  file_put_contents('111.html', $buffer);
  return $buffer; //不需显示页面内容就 return '';
}
ob_start("callback");
?>
echo'wee';
?>

这样写 不会生成11……
你得引用这个函数啊,这个自定义函数不得使用才行啊

function callback($buffer) {
  file_put_contents('111.html', $buffer);
  return $buffer; //不需显示页面内容就 return '';
}
ob_start("callback");
?>
echo'wee';
?>

这样写 不会生成11…… 噢,php 已被改得面目全非了。
加个参数
ob_start("callback", PHP_OUTPUT_HANDLER_START);
以前是不要的



引用 5 楼 aaa86965921aaa 的回复: function callback($buffer) {
  file_put_contents('111.html', $buffer);
  return $buffer; //不需显示页面内容就 return '';
}
ob_start("callback");
?>
ec……

$buffer 参数写什么   能不能写个能用的给我。。

这样就行,已通过测试

function callback($buffer) {  file_put_contents('你需要的文件名', $buffer);  return $buffer; //不需显示页面内容就 return '';}ob_start("callback", PHP_OUTPUT_HANDLER_START);

这样就行,已通过测试
PHP code?12345function callback($buffer) {  file_put_contents('你需要的文件名', $buffer);  return $buffer; //不需显示页面内容就 return '';}ob_start("callback", PHP_OUTPUT_HANDLER_START);
    ……



恩 但我改成
function callback($buffer) {
  file_put_contents('111.html', $buffer);
  return $buffer; //不需显示页面内容就 return '';
}
ob_start("callback");
?>



    require_once('gongxiang.php');
    $con = lianjie();
       
     $result = mysql_query("SELECT * FROM tupianwenzi left join detail on tupianwenzi.xiaofenleiindex = detail.xiaofenleidetail");

     while($row = mysql_fetch_array($result))
     {
     





    echo'


  • 怎么生成静态页面

    '.$row['xiaofenleiindex'].'



  • ';

     }
    ?>
       mysql_close($con);
     ?>

 

又不行了

生成不了 生成不了 生成不了 

function callback($buffer) {
  file_put_contents('111.html', $buffer);
  return $buffer; //不需显示页面内容就 return '';
}
ob_start("callback" , PHP_OUTPUT_HANDLER_START);

要说几遍才能注意到细节呢?

function callback($buffer) {
  file_put_contents('111.html', $buffer);
  return $buffer; //不需显示页面内容就 return '';
}
ob_start("callback", PHP_OUTPUT_HANDLER_START);

要说几遍才能注意到细节呢?
    ……


function callback($buffer) {
  file_put_contents('111.html', $buffer);
  return $buffer; //不需显示页面内容就 return '';
}
ob_start("callback",PHP_OUTPUT_HANDLER_START);
?>



    require_once('gongxiang.php');
    $con = lianjie();
       
     $result = mysql_query("SELECT * FROM tupianwenzi left join detail on tupianwenzi.xiaofenleiindex = detail.xiaofenleidetail");

     while($row = mysql_fetch_array($result))
     {
     





    echo'


  • 怎么生成静态页面

    '.$row['xiaofenleiindex'].'



  • ';

     }
    ?>
       mysql_close($con);
     ?>

 还是生成不了 一片空白

刚才又测试了一下,对于多段输出需要写作

define('CACHE_FILE', '111.html');function callback($buffer) {  file_put_contents(CACHE_FILE, $buffer, FILE_APPEND);  return $buffer; //不需显示页面内容就 return '';}file_put_contents(CACHE_FILE, '');ob_start("callback", PHP_OUTPUT_HANDLER_START);

当然你可用全局变量而不是常量来指定目标文件名

<?php/* Created on [2013-3-22] Author[Newton] Filename[test20.php]*/function callback($buffer) {  file_put_contents('111.html', $buffer);  return $buffer; //不需显示页面内容就 return '';}ob_start("callback",PHP_OUTPUT_HANDLER_START);?><div class="tpwzzs"><ul><?php//require_once('gongxiang.php');//$con = lianjie();//// $result = mysql_query("SELECT * FROM tupianwenzi left join detail on tupianwenzi.xiaofenleiindex = detail.xiaofenleidetail");//// while($row = mysql_fetch_array($result))// {$row = array('id'=>'id','tupianindex'=>'tupianindex','xiaofenleiindex'=>'xiaofenleiindex','detailindex'=>'detailindex');echo'<li><div class="tp"><a target="_blank" href="2jiyemian/2jiyemian.php?id='.$row['id'].'"><img  src="'.$row['tupianindex'].'" / alt="怎么生成静态页面" ></a></div><div class="detail">'.$row['xiaofenleiindex'].'</div><div class="detail1"><a target="_blank" href="2jiyemian/2jiyemian.php?id='.$row['id'].'">'.$row['detailindex'].'</a></div><div class="detailanniu"><a target="_blank" href="2jiyemian/2jiyemian.php?id='.$row['id'].'"></a></div></li>';// }?><?php	//mysql_close($con); ?></ul></div><?php	ob_end_flush();	?>

<!--源码--><div class="tpwzzs"><ul><li><div class="tp"><a target="_blank" href="2jiyemian/2jiyemian.php?id=id"><img  src="tupianindex" / alt="怎么生成静态页面" ></a></div><div class="detail">xiaofenleiindex</div><div class="detail1"><a target="_blank" href="2jiyemian/2jiyemian.php?id=id">detailindex</a></div><div class="detailanniu"><a target="_blank" href="2jiyemian/2jiyemian.php?id=id"></a></div></li></ul></div>

刚才又测试了一下,对于多段输出需要写作
PHP code?1234567define('CACHE_FILE', '111.html');function callback($buffer) {  file_put_contents(CACHE_FILE, $buffer, FILE_APPEND);  return $buffer; //不需显示页面内容就 retur……


你太给力了 搞定了 你好人做到底吧 怎么把这个页面的php地址都改成html 

刚才又测试了一下,对于多段输出需要写作
PHP code?1234567define('CACHE_FILE', '111.html');function callback($buffer) {  file_put_contents(CACHE_FILE, $buffer, FILE_APPEND);  return $buffer; //不需显示页面内容就 retur……

怎么把页面的PHP改成html啊
比方说

'.$row['detailindex'].'

 

 

你在
file_put_contents('111.html', $buffer);
前先执行
$buffer = preg_replace('/(href=.+?)\.php/', '$1.html', $buffer);

不过规则可能没那么简单,你想好了再说

我也是类似问题,至今无解,求大神啊

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn