【问题标题】:How to get json file object and upload it in laravel如何获取json文件对象并在laravel中上传
【发布时间】:2016-11-06 09:20:00
【问题描述】:

我想在 laravel 中上传一个 json 文件对象,这个对象来自 angular js,格式如下:

{
      "key": "lfobj2399fe3b",
      "lfFile": {},
      "lfFileName": "photo-1433354359170-23a4ae7338c6.jpg",
      "lfDataUrl": "blob:http://localhost/14044b8b-9dcb-4461-8e2e-cf5337611396",
      "element": {
        "0": {
          "ng339": 198
        },
        "length": 1
      }
    } 

这是我用来在 Angular js 中实现文件上传的插件: https://github.com/shuyu/angular-material-fileinput

我试过了:

if ($request->hasFile('banners')) {
      return \Response::json('file available',$statusCode);
   }

检查我的输入中是否有任何文件可用,但我什么也没有。 如果我想将此对象作为对象获取,我可以通过使用来获取它的值:

$banners = $request->input('banners');

但我无法使用此输入上传任何文件。 我怎样才能得到这个对象并将其上传到 laravel 中?

【问题讨论】:

    标签: php json file-upload request laravel-5.3


    【解决方案1】:

    对于处理 json 对象,您可以使用:

    $request->input('object_name');
    

    对于从角度上传,您可以使用表单数据请求,然后在 laravel 中处理它,例如:

    if (isset($_FILES['files']) && $_FILES['files']['error'] == 0) {
    
                    ############ Edit settings ##############
                    $UploadDirectory = '../public/images/banners/'; //specify upload directory ends with / (slash)
    
                    ##########################################
    
                    $NewFileName = strtolower($_FILES['files']['name']);
    
                    //===========Remove the file if exist==============
                    if(file_exists($UploadDirectory.$NewFileName)) {
                        unlink($UploadDirectory.$NewFileName);
                    }
                    //===========Remove the file if exist==============
    
                    if (move_uploaded_file($_FILES['files']['tmp_name'], $UploadDirectory . $NewFileName)) {
                        $Access_Directory = "/images/banners/";
                        $file = $Access_Directory . $user_id . "/". $NewFileName;
                        return $file;
    
                    }
                }
    

    这个方法我用过,效果还不错。

    【讨论】:

      猜你喜欢
      • 2022-11-27
      • 2020-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多