前台表单一堆参数,post提交后,后台如果需要手动接收从$_POST中取参数就太烦了,可以先查询对应表中的所有列名,然后根据列名匹配,把post参数自动放到数组中。这样后台保存数据时就能省很多代码了。
public function post_map($tbname){ $columns = $this->table_column($tbname); //循环所有列名 for($i=0;$i<count($columns);$i++){ if(isset($_POST[$columns[$i]])){ //赋值到数组中,名称使用列名 $data[$columns[$i]] = $_POST[$columns[$i]]; } } return $data; } public function table_column($tbname) { $result = $this->queryAll("SHOW FULL COLUMNS FROM "._DB_PRE_.$tbname); foreach ($result as $data) { $columns[] = $data['Field']; } return $columns; }