公司项目过程中,一些支付产品类似银联在线支付,都需要构建表单来提交,这时候要是还需要后台构建好参数再渲染到前台再提交就显的有点啰嗦了。使用以下代码即可
function create_auto_html($params, $action)
{
$encodeType = isset ($params ['encoding']) ? $params ['encoding'] : 'UTF-8';
$html = <<<eot
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset={$encodeType}" />
</head>
<body onload="javascript:document.pay_form.submit();">
<form id="pay_form" name="pay_form" action="{$action}" method="post">
eot;
foreach ($params as $key => $value) {
$html .= " <input type=\"hidden\" name=\"{$key}\" id=\"{$key}\" value=\"{$value}\" />\n";
}
$html .= <<<eot
</form>
</body>
</html>
eot;
return $html;
}
这里的 params是一个array数组,也就是你要提交的参数, action自然是提交的路径