douzhe1264 2019-06-30 09:30
浏览 178
已采纳

如何修复'file_get_content'无法打开流

i'm using cups-ipp to print from web project

and i got this error

file_get_contents(./helloworld.pdf): failed to open stream: No such file or directory

I tried to get file from storage but got the same error

        $builder = new Builder();

        $responseParser = new ResponseParser();

        $printerManager = new PrinterManager($builder, $client, $responseParser);
        $printer = $printerManager->findByUri('ipp://localhost:631/printers/HP_HP_ColorLaserJet_MFP_M278-M281');

        $jobManager = new JobManager($builder, $client, $responseParser);
        $filePath = '../../../storage/app/public/estimated_dates.pdf';

        $job = new Job();
        $job->setName('job create file');
        $job->setUsername('demo');
        $job->setCopies(1);
        $job->setPageRanges('1');
        $job->addFile('./helloworld.pdf');
        $job->addAttribute('media', 'A4');
        $job->addAttribute('fit-to-page', true);
        $result = $jobManager->send($printer, $job);

I linked storage and I'm sure that the path is correct (I also used auto complete path plugin)

  • 写回答

1条回答 默认 最新

  • doujiao4705 2019-06-30 09:58
    关注

    Try to make use of Laravel's base_path() helper.

    base_path() is equal to the root of your project. So, let's, for example, you want to access estimated_dates.pdf. The correct solution would be:

    base_path('storage/app/public/estimated_dates.pdf');
    

    However, you could make use of:

    php artisan storage:link
    

    and you can access the file by: asset('estimated_dates.pdf')

    I guess your helloworld.pdf is in root of the application, so:

    base_path('helloworld.pdf')
    

    base_path(): https://laravel.com/docs/5.8/helpers#method-base-path

    storage:link: https://laravel.com/docs/5.8/filesystem#configuration

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵