当前位置:首页 > PHP教程 > php文件操作 > 列表

php创建文件时存在文件自动重命名实现方法

发布:smiling 来源: PHP粉丝网  添加日期:2014-08-04 14:53:48 浏览: 评论:0 

php创建文件时存在文件自动重命名实现方法,实例代码如下:

  1. <?php 
  2. function createfile($filename, $content = '') 
  3. { 
  4.     $fp = file_put_contents($filename, $content); 
  5. } 
  6.  
  7. // 要创建的文件名称 
  8. $filename = 'www.txt'; 
  9.  
  10. if(file_exists($filename)) 
  11. { 
  12.     // 打开当前目录 
  13.    $handle = opendir('./'); 
  14.     $fileinfo = pathinfo($filename); 
  15.     //print_r($fileinfo); 
  16.     $files = array(); 
  17.     while (false !== ($file = readdir($handle))) 
  18.     { 
  19.         if(preg_match_all("/{$fileinfo['filename']}(d*).{$fileinfo['extension']}/i", $file, $match)) 
  20.         { 
  21.             $max = max($match[1]); 
  22.             if($max) 
  23.             { 
  24.                 $createfile = $fileinfo['filename'] . ($max + 1) . '.' . $fileinfo['extension']; 
  25.             } 
  26.             else 
  27.             { 
  28.                 $createfile = $fileinfo['filename'] . '1.' . $fileinfo['extension']; 
  29.             } 
  30.         } 
  31.     } 
  32.     createfile($createfile); 
  33. } 
  34. else 
  35. { 
  36.     createfile($filename); 
  37. } 
  38. ?> 

使用临时文件作记数器,方法二,实例代码如下:

  1. <?php 
  2. function createfile($filename, $content = '') 
  3. { 
  4.     if(file_exists($filename . '.tmp')) 
  5.     { 
  6.         $num = (int) file_get_contents($filename . '.tmp') + 1; 
  7.         $fileinfo = pathinfo($filename); 
  8.         file_put_contents($fileinfo['filename'] . '(' . $num . ')' .$fileinfo['extension'], $content); 
  9.         file_put_contents($filename . '.tmp', $num); 
  10.     } 
  11.     else 
  12.     { 
  13.         file_put_contents($filename, $content); 
  14.         file_put_contents($filename . '.tmp', 1); 
  15.     } 
  16. } 
  17. createfile('test.txt'); 
  18. ?> 

Tags: php创建文件 自动重命名

分享到: