如何从输入表格Cakephp 3获取数据

时间:2017-05-16 07:20:16

标签: php cakephp

我对这个Cakephp框架很陌生,试图遵循并理解如何使用cakephp上传文件。我正在使用josediazgonzalez提供的上传插件。在视图文件中,使用formhelper我有:

<?= $this->Form->create($user, ['type' => 'file']) ?>
<fieldset>
    <legend><?= __('Add User') ?></legend>
    <?php
        echo $this->Form->control('name');
        echo $this->Form->control('username');
        echo $this->Form->control('password');
        echo $this->Form->control('role');
        echo $this->Form->input('photo', ['type' => 'file']); 
        echo $this->Form->control('dir');
    ?>
</fieldset>
<?= $this->Form->button(__('Submit')) ?>
<?= $this->Form->end() ?>

我想再次打印我在控制器中提交的值,我该怎么写?类似的东西:

$this->request->data;

1 个答案:

答案 0 :(得分:5)

$ this-&gt; request-&gt; data是传递给scirpt的数据数组。您可以使用它来获取您感兴趣的字段,例如:

$data = $this->request->data;
$someVariable = $data["name"];

或者,您可以使用data()访问器直接访问任何字段:

$someVariable = $this->request->data("name");

从这一点开始,您可以使用此变量执行任何操作。

还有一件事 - 因为$ this-&gt; request-&gt;数据和$ this-&gt; request-&gt; data()目前处于弃用状态,将在下一版本中删除,我建议使用$ this - &gt; request-&gt; getData()代替。用法类似:

$this->request->getData(); //will return array of data passed
$this->request->getData("field_name"); //access to specific field