>  기사  >  백엔드 개발  >  php fopen 有关问题

php fopen 有关问题

WBOY
WBOY원래의
2016-06-13 13:33:171005검색

php fopen 问题求助
templetest.php

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
<?php $title     = "tst";
   $file        = "hehe";
   $fp       = fopen ("temp.html","r");
   $content  = fread ($fp,filesize ("temp.html"));
  // echo "读取的信息".$content."<br>";
   $content .= str_replace ("{file}",$file,$content);
   // echo $content;
   $content .= str_replace ("{title}",$title,$content);   
   $filename = "test.html";
   $handle    = fopen ($filename,"w"); //打开文件指针,创建文件
   /*
 检查文件是否被创建且可写
   */
   if (!is_writable ($filename)){
      die ("文件:".$filename."不可写,请检查其属性后重试!");
   }
   if (!fwrite ($handle,$content)){  //将信息写入文件
      die ("生成文件".$filename."失败!");
   } 
   fclose ($handle); //关闭指针   
   die ("创建文件".$filename."成功!");
?>



temp.html
PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
  <title>{title}</title>
  
     {file}
  



生成之后的界面
test.html
HTML code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
  <title>{title}</title>
  
     {file}
  


  {title}
  
     hehe
  


  tst
  
     {file}
  


  tst
  
     hehe
  



尝试做文章静态化
问:为什么会出现这么多次、我只需要最后一次。。

------解决方案--------------------
$content = str_replace ("{file}",$file,$content);
// echo $content;
$content = str_replace ("{title}",$title,$content);

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