繁体   English   中英

如何获取json文件对象并在laravel中上传

[英]How to get json file object and upload it in laravel

我想在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中?

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

$request->input('object_name');

对于从angular上传,您可以使用表单数据请求,然后在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;

                }
            }

我已经使用了这种方法,实际上效果很好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM