2017-07-07 166 views
1

操作系统是macOS。本地服务器环境是MAMP,USB路径是/Volumes/USB_DISKphp从usb磁盘更改文件名

现在我想检测U盘文件的变化和改变它的名字一样,变化1.jpega1.jpeg,代码:

function getFreshImage($dir, $prefix){ 
    $iterator = new FilesystemIterator($dir, FilesystemIterator::CURRENT_AS_PATHNAME); 
    foreach ($iterator as $fileinfo) { 
     $fullName = basename($iterator->current()); 
     $name = basename($iterator->current(), '.jpeg'); 
     if (strpos($name, '.') === false && strpos($name, $prefix) === false) {  
      $newName = $prefix.$fullName; 
      $bool = rename($dir.$fullName, $dir.$newName); // always return false here 
     } 
    } 
} 


$fname = '/Volumes/USB_DISK'; 
$prefix = 'a'; 
getFreshImage($fname, $prefix);  // add prefix to fresh image 

我检查了目录,权限为777,任何人都知道如何这样做,我应该配置php.ini或其他东西?

回答

0

好像我犯了一个愚蠢的错误,我尝试在公共线php scanFile.php,它显示了

Warning: rename(/Volumes/USB_DISKa1.jpeg,/Volumes/USB_DISKba1.jpeg): No such file or directory in /Applications/MAMP/htdocs/capture/scanFile.php on line 36 
falseba3.jpeg<br><br> 

所以我觉得,我通过一个错误的dir参数,可以在fname

$fname = '/Volumes/USB_DISK/'; 

只是一个slash,现在它工作。