我可以在服务器端PHP代码中操作POST请求吗?
我使用的是PHP和Codeigniter。
我在控制器中定义了一个函数,它通过POST从FORM接收一些数据。
public function primary_fn(){
// Gets called on form submit - POST
// Some Logic
// Case 1 : call sec_fn1()
// Case 2 : call sec_fn2()
// Case 3 : Call sec_fn3()
}
现在,我已经在处理POST数据的模型中编写了几个函数。
public function sec_fn1(){
// Processing POST data
}
public function sec_fn2(){
// Processing POST data
}
public function sec_fn3(){
// Processing POST data
}
我不会将任何参数传递给次要函数。他们通过类似以下的语句直接访问POST请求中的值-
$x = $this->input->post('name') ;
现在我有了一些要求,这使得我想在某些情况下操作POST请求中的数据。由于辅助函数太多,我不想更改它们的代码。我可以从主函数操作POST请求中的数据,并让更改后的数据由辅助函数使用吗?
Can I manipulate the POST request inside serverside PHP code ?
是的,你可以。您可以像设置任何其他变量一样设置$_POST的值。
$_POST['name'] = 'Some new value';
手动操作全局变量不是一个好主意,也不是编程的最佳实践$_POST必须用于处理从浏览器发送到服务器的数据。
尝试创建自己的全局变量来操作数据,而不是直接操作$_POST。