【问题标题】:Laravel DOMDocument : failed to open stream: Permission deniedLaravel DOMDocument:无法打开流:权限被拒绝
【发布时间】:2021-10-19 18:42:38
【问题描述】:

我正在尝试在 Laravel 中生成 xml 文件,我使用的是 DOMdocument,但是当我尝试保存文件时收到此错误消息:

DOMDocument::save(result.xml): failed to open stream: Permission denied (View: /opt/lampp/htdocs/myproj/resources/views/feed/index.blade.php)

刀片文件中的代码:

    @php 
$dom = new DOMDocument('1.0','UTF-8');
  $dom->formatOutput = true;

  $root = $dom->createElement('student');
  $dom->appendChild($root);

  $result = $dom->createElement('result');
  $root->appendChild($result);

  $result->setAttribute('id', 1);
  $result->appendChild( $dom->createElement('name', 'Opal Kole') );
  $result->appendChild( $dom->createElement('sgpa', '8.1') );
  $result->appendChild( $dom->createElement('cgpa', '8.4') );

  echo '<xmp>'. $dom->saveXML() .'</xmp>';
  $dom->save('result.xml') or die('XML Create Error');
@endphp

我知道这是经过许可的,但我不确定在哪里更改许可以及更改什么。提前感谢您的帮助。

【问题讨论】:

    标签: php xml laravel


    【解决方案1】:

    似乎您需要提供可写路径来保存方法,例如 $dom-&gt;save(storage_path('result.xml'))

    【讨论】:

    • 不错。谢谢!:)
    【解决方案2】:

    您在哪个目录/文件夹中创建“result.xml”文件,该目录您应该给予775权限

    然后运行下面的命令

    php artisan optimize:clear
    

    php artisan config:clear
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-05-31
      • 2013-06-05
      • 2019-05-02
      • 2018-06-27
      • 2018-10-20
      • 1970-01-01
      • 2019-08-22
      相关资源
      最近更新 更多