尝试复制时在路径处找不到文件

2022-08-30 15:44:57

我正在尝试将文件从一个位置复制到另一个位置。我很确定位置是正确的,但我仍然在标题中遇到错误。

下面是一些代码:

$oDirectory = new \RecursiveDirectoryIterator($extractFolder.'/res');
$oIterator = new \RecursiveIteratorIterator($oDirectory);
foreach($oIterator as $oFile) {
    if ($oFile->getFilename() == 'icon.png') {
        $icons[filesize($oFile->getPath().'/icon.png')] = $oFile->getPath().'/icon.png';
    }
}
asort($icons);
print_r($icons);
$icon_source = end($icons);
echo $icon_source;
$generated_icon_file = str_slug($packagename.$version).'.png';
Storage::copy($icon_source, $generated_icon_file);

返回(这意味着文件存在):print_r

Array ( [19950] => /var/www/apk.land/storage/extracted_apks/res/drawable-xxhdpi-v4/icon.png [31791] => /var/www/apk.land/storage/extracted_apks/res/drawable-xxxhdpi-v4/icon.png [6979] => /var/www/apk.land/storage/extracted_apks/res/drawable-hdpi-v4/icon.png [10954] => /var/www/apk.land/storage/extracted_apks/res/drawable-xhdpi-v4/icon.png )

回声返回:

/var/www/apk.land/storage/extracted_apks/res/drawable-xxxhdpi-v4/icon.png

确切的错误是:

在路径中找不到文件:var/www/apk.land/storage/extracted_apks/res/drawable-xxxhdpi-v4/icon.png

附言.PHP的功能非常好。copy

我在这里找不到问题。

有什么建议吗?


答案 1

你说错误是这样的:

File not found at path: var/www/apk.land/storage/extracted_apks/res/drawable-xxxhdpi-v4/icon.png

这里的错误是说它找不到,这意味着它正在寻找,而你的文件位于 的某个地方。解决此问题的快速方法是使用协议。只需像这样使用它:var/wwwapk.land/var/www/var/wwwfile

file:///var/www/storage/apk.land/storage/extracted_apks/res/drawable-xxxhdpi-v4/icon.png

答案 2

尝试使用是
PHP 函数上的包装器File::copy($file, $dest)of Storage::copy($old, $new)File::copy()copy()


推荐