访问Symfony ParameterBag中的嵌套参数

时间:2016-05-25 14:00:05

标签: symfony request

请求看起来像这样

ParameterBag {#362 ▼
  #parameters: array:1 [▼
    "form" => array:5 [▼
      "titre" => "new b"
      "prix" => "4444"
      "slug" => "with-different-slug"
      "publier" => "unpub"
      "Modifier" => ""
    ]
  ]
}

我该如何使用? $ post = Request :: createFromGlobals(); $ post-> request->对这些嵌套属性有()?

1 个答案:

答案 0 :(得分:2)

ParameterBag的has功能不支持深度检查。这只是array_key_exists电话。

您可以get使用$deep参数设置为true

E.g:

$post = Request::createFromGlobals();
$post->request->get('form[titre]', null, true);

如果该值不存在,它将返回null(第二个参数)。

编辑:

此功能在2.8中已弃用。

Using paths to find deeper items in get is deprecated since version 2.8 and will be removed in 3.0. Filter the returned value in your own code instead.