>백엔드 개발 >PHP 튜토리얼 >怎么生成静态页面

怎么生成静态页面

WBOY
WBOY원래의
2016-06-23 14:03:361017검색

比方说



    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);

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

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.