【发布时间】:2017-09-02 14:49:42
【问题描述】:
我正在尝试在 laravel 中上传 Excel 文件后对其进行编辑。 该文件已上传到本地磁盘,因此任何人都无法从公众访问它。
文件系统.php
'local' => [
'driver' => 'local',
'root' => storage_path('app')
Routes.php
Route::get('test',function()
{
// Create new PHPExcel object
$objPHPExcel = new PHPExcel();
$objPHPExcel = PHPExcel_IOFactory::load(Storage::disk('local')->url('margin/analyser/0IGkQQgmGXkHrV9ISnBTrGyZFUPfjz3cWJbLGbDN.xlsx'));
$objPHPExcel->setActiveSheetIndex(0);
echo $objPHPExcel->getActiveSheet()->getHighestRow();
})->middleware('admin');
我不断收到错误:
Could not open /storage/margin/analyser/0IGkQQgmGXkHrV9ISnBTrGyZFUPfjz3cWJbLGbDN.xlsx for reading! File does not exist.
这行得通
$objPHPExcel = PHPExcel_IOFactory::load('..'.Storage::disk('local')->url('app/margin/analyser/0IGkQQgmGXkHrV9ISnBTrGyZFUPfjz3cWJbLGbDN.xlsx'));
但这很烦人。我认为在 filesystems.php 中指定 'root' => storage_path('app') 意味着 Storage::disk('local') 将直接在应用程序中
【问题讨论】:
-
您的 0IGkQQgmGXkHrV9ISnBTrGyZFUPfjz3cWJbLGbDN.xlsx 文件在正确的路径中吗?
-
您将文件传递给 storage/app 但尝试从 storage/margin 获取它尝试在您的 url 函数中添加 app/
-
还是同样的错误。但这有效。 “……” Storage::disk('local')->url('app/margin/analyser/0IGkQQgmGXkHrV9ISnBTrGyZFUPfjz3cWJbLGbDN.xlsx')。但这很烦人。我认为在 filesystems.php 中指定 'root' => storage_path('app') 意味着 Storage::disk('local') 将直接在应用程序中
标签: php laravel xampp composer-php phpexcel