Is it possible to get all post variables in Expres

2019-04-08 20:47发布

In a controller in CI you could get all post variables by doing something like this:

$data = $this->input->post();

In EE (built off of CI by the same people) the analogous syntax would be:

$data = $this->EE->input->post();

The only issue is that instead of an array with all of the data, you get a boolean of false.

Is there some way of getting an array of all post data, using ExpressionEngine rather than the POST superglobal?

Thanks.

2条回答
ら.Afraid
2楼-- · 2019-04-08 21:10

Ok, the way to get results similar to CI within EE for all elements of a POST, while still leveraging the security features of EE is the following:

foreach($_POST as $key => $value){
     $data[$key] = $this->EE->input->post($key);
}

Since you can access POST vars by name, looping through them in $_POST, then explicitly calling each will yield the desired result.

查看更多
Emotional °昔
3楼-- · 2019-04-08 21:12

Try native

$this->input->post(NULL, TRUE); // returns all POST items with XSS filter 
$this->input->post(); // returns all POST items without XSS filter

Ref: https://www.codeigniter.com/user_guide/libraries/input.html

查看更多
登录 后发表回答