【发布时间】:2019-10-09 03:28:06
【问题描述】:
我正在尝试将文件从一个位置复制到另一个位置。我很确定位置是正确的,但标题中的错误仍然存在。
这里有一些代码:
$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 函数效果很好。
我在这里找不到问题。
有什么建议吗?
【问题讨论】:
-
看起来“var”作为网址开头的一部分正在渗入。这是故意的吗?
-
@JJFord3 你什么意思?我不明白:)
-
报错中的路径是:var/www/apk.land/storage/extracted_apks/res/drawable-xxxhdpi-v4/icon.png 应该是www/apk.land/storage/extracted_apks /res/drawable-xxxhdpi-v4/icon.png?
-
有点像存储驱动程序在复制时删除了路径前的初始斜杠,注意它在错误消息中显示
var/www/...而不是/var/www/...不知道为什么。 -
它只显示文件路径..没有什么可以验证它是否真的存在..但是你能从浏览器或其他东西打开这个图像吗?
标签: php laravel laravel-5 laravel-5.1