【问题标题】:php change filename from usb diskphp从USB磁盘更改文件名
【发布时间】:2017-07-07 04:49:16
【问题描述】:

操作系统是 macOS。本地服务器环境为MAMP,usb路径为/Volumes/USB_DISK

现在我想检测USB磁盘中的文件更改并更改其名称,例如将1.jpeg更改为a1.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还是别的?

【问题讨论】:

    标签: php linux mamp


    【解决方案1】:

    看来我犯了一个愚蠢的错误,我在公共行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,现在它可以工作了。

    【讨论】:

      猜你喜欢
      • 2011-02-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-01
      • 2022-01-16
      • 2011-11-13
      • 1970-01-01
      • 2019-02-25
      相关资源
      最近更新 更多