首页 > 代码库 > 正则表达过滤表单隐藏元素,组装post数据

正则表达过滤表单隐藏元素,组装post数据

<form name="form1" action="‘.$serverUrl.‘" method="post" >
<input type="hidden" name="id" value="http://www.mamicode.com/‘.htmlentities($id).‘" />
<input type="hidden" name="username" value="http://www.mamicode.com/‘.htmlentities($username).‘" />

1 获取到表单格式如上,现需要获取表单中的隐藏元素数值

 preg_match_all(‘|name="(.*)"|isU‘, $pay, $name); //匹配name值到数组$arr中;
 preg_match_all(‘|value="http://www.mamicode.com/(.*)"|isU‘, $pay, $arr); //匹配value到数组$arr中;

注:测试我们需要的值是$name[1],$arr[1]

2 再根据具体的数据形式,使用array_pop,array_shift 进行处理

3 使用array_combine($name[1],$arr[1]) 合并成所需要的数据

4 在用curl方法,post给指定的服务器(大功告成)

 

注:本人主要应用在第三方支付需要传递支付参数,获取支付页面

正则表达过滤表单隐藏元素,组装post数据