Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在Magento中知道post的键?_Php_Magento_Post - Fatal编程技术网

Php 如何在Magento中知道post的键?

Php 如何在Magento中知道post的键?,php,magento,post,Php,Magento,Post,我完成了本教程: 访问post数据时,作者使用: $this->getRequest()->getPost('brandData') 我想知道我们怎么知道post数据中有brandData密钥 注意:我知道我可以使用 var_dump($this->getRequest()->getPost()) 但是我想知道如何在不手动打印整个post数据的情况下了解它。可用字段都是从html表单元素生成的,这些表单元素的值已发送到控制器,然后控制器使用post数据 因此,可能

我完成了本教程:

访问post数据时,作者使用:

 $this->getRequest()->getPost('brandData')
我想知道我们怎么知道post数据中有brandData密钥


注意:我知道我可以使用

var_dump($this->getRequest()->getPost())

但是我想知道如何在不手动打印整个post数据的情况下了解它。

可用字段都是从html表单元素生成的,这些表单元素的值已发送到控制器,然后控制器使用post数据

因此,可能有一个类似于此的代码片段

<form method="post" action="/path/to/your/controllerAction">
    <input type="text" name="brandData" value="Default value" />
</form>


在用于向控制器发送数据的页面上。

我们可以使用array\u key\u exists函数检查特定键是否存在于数组中。我检查了表单,但输入标记类似于:表单中可能不止一个输入元素。如果你还不熟悉,你可能应该去看看。哦,是的,你是对的,表单中有很多输入元素,例如brandData[name],brandData[url]。似乎Magento会自动将它们转换为数组。它们每个都对应一个post值吗?没错,如果输入字段的名称包含大括号,则将其视为数组。这意味着,如果表单包含以下输入(或select、textarea等)元素
$this->getRequest()->getPost('brandData')
将生成以下数组:
数组('name'=>'这是我的名字','url'=>'http://niceurl.com');谢谢你的回答@林达。