php创建文件时存在文件自动重命名实现方法
php创建文件时存在文件自动重命名实现方法,实例代码如下:
<?php function createfile($filename, $content = '') { $fp = file_put_contents($filename, $content); } // 要创建的文件名称 $filename = 'www.txt'; if (file_exists($filename)) { // 打开当前目录 $handle = opendir('./'); $fileinfo = pathinfo($filename); //print_r($fileinfo); $files = array(); while (false !== ($file = readdir($handle))) { if (preg_match_all("/{$fileinfo['filename']}(d*).{$fileinfo['extension']}/i", $file, $match)) { $max = max($match[1]); if ($max) { $createfile = $fileinfo['filename'] . ($max + 1) . '.' . $fileinfo['extension']; } else { $createfile = $fileinfo['filename'] . '1.' . $fileinfo['extension']; } } } createfile($createfile); } else { createfile($filename); } ?>
使用临时文件作记数器,方法二,实例代码如下:
<?php function createfile($filename, $content = '') { if (file_exists($filename . '.tmp')) { $num = (int)file_get_contents($filename . '.tmp') + 1; $fileinfo = pathinfo($filename); file_put_contents($fileinfo['filename'] . '(' . $num . ')' . $fileinfo['extension'], $content); file_put_contents($filename . '.tmp', $num); } else { file_put_contents($filename, $content); file_put_contents($filename . '.tmp', 1); } } createfile('test.txt'); ?>
文章地址:http://www.phprm.com/wenjian/fs4175.html
转载随意^^请带上本文地址!