【问题标题】:laravel and json arraylaravel 和 json 数组
【发布时间】:2017-04-10 01:25:59
【问题描述】:

我正在使用 laravel 5.3 和 angularjs 我从我的 angularjs 提交 json,如下所示

{"grc":{"id":1},"floatingGrcs":[{"days":"10","units":"100"},{"days":"20","units":"200"}]}

我从我的 laravel 控制器中接受这个数组,如下所示

public function store(Request $request)
{
   //how to extract $request object in here
}

我不知道如何在laravel控制器中提取提交的json数组

【问题讨论】:

    标签: angularjs json laravel


    【解决方案1】:

    你可以使用标准的json_decode():

    public function store(Request $request)
    {
        $data = json_decode($request->someJson);
    }
    

    您可以通过dd($request->all());查看所有可用数据

    【讨论】:

      【解决方案2】:

      常见的情况是不需要通过 Angular 发布 json 编码的数据。

      要使用 Angular 提交内容,您应该使用,例如:

      $http.post('api/something', {"grc":{"id":1},"floatingGrcs": [..]})
      

      然后Laravel端就不需要解码json了:

      public function store(Request $request)
      {
         $request->all();     // to get all fields
         $request->grc->id;   // to get a specific field
      }
      

      【讨论】:

        【解决方案3】:

        我得到了以下代码的答案。但我不确定

        $params = json_decode(file_get_contents('php://input'), TRUE);
        

        上面这行代码是否安全。

        public function store()
            {
        
                $params = json_decode(file_get_contents('php://input'), TRUE);
        
                foreach ($params as $key => $value) 
                {
                    if($key == "grc")
                    {
                        $grc_id = $value["id"];
                    }
                    elseif($key == "floatingGrcs")
                    {
                        foreach ($value as $floating) 
                        {
                            $days = $floating["days"];
        
                        }
                    }
        
                }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2021-04-12
          • 2018-05-31
          • 1970-01-01
          • 2018-08-05
          • 2022-01-08
          • 2015-04-15
          • 2021-01-26
          相关资源
          最近更新 更多