Home  >  Article  >  Backend Development  >  php fopen 有关问题

php fopen 有关问题

WBOY
WBOYOriginal
2016-06-13 13:33:17969browse

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

没有 . ,不然的话会把处理前后结果相连
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn