php提交post数组参数实例分析


Posted in PHP onDecember 17, 2015

本文实例分析了php提交post数组参数的用法。分享给大家供大家参考,具体如下:

首先php中要想从页面传送数组到服务端a,要在页面上多个空间同名,而且对于名称有要求,那就是 name="aa[ ]",注意这里要多加一个数组的符号,这样才能在服务端a取到

$_POST[aa]

得到的为数组。

更深一层的问题是,假设我现在需要对post中的参数进行处理后,再传送给另外一个服务端,对于参数aa,应该怎么传递呢?

如果不做什么处理,拼装完post请求后,服务端b获取到的永远只是Array,无法取到实际值。

现在的解决方案是:现在服务端a进行序列化,然后在服务端b接收后进行反序列化。这样反序列化后的值就是一个数组了,和a段获取到的一样。

序列化

$_POST["aa"] =serialize($_POST[aa]);

反序列化
$a = "a:2:{i:0;s:1:\"1\";i:1;s:1:\"2\";}";
var_dump(unserialize($a));

结果是什么呢:

array(2) {
 [0]=>
 string(1) "1"
 [1]=>
 string(1) "2"
}

而在post中获取到的序列化后的参数是有进行添加过转义符的,获取后需要去掉,然后才能反序列化成功

$bb = $_POST["aa"];
$bb = str_replace("\\", '', $bb);
var_dump(unserialize($a));

好了,这样才是你要的结果。

当然,还有一种问题是,你可以直接把数组值传递给页面的某一空间,提交给服务端。这种情况同样需要序列化和反序列化。

页面

<input type="hidden" name="aa" value="<?php echo base64_encode(serialize($array));?>" />
var_dump(base64_decode(unserialize(<pre class="html" name="code">{1}</pre><br>POST['post_data'])));

不知道加了这个base64_encode有什么作用,貌似是给中文编码的吧? 

希望本文所述对大家php程序设计有所帮助。

PHP 相关文章推荐
人大复印资料处理程序_输入篇
Oct 09 PHP
source.php查看源文件
Dec 09 PHP
php网页后退不再出现过期
Mar 08 PHP
PHP小程序自动提交到自助友情连接
Nov 24 PHP
php中几种常见安全设置详解
Apr 06 PHP
PHP使用PHPMailer发送邮件的简单使用方法
Nov 12 PHP
php加密解密实用类分享
Jan 07 PHP
解密ThinkPHP3.1.2版本之独立分组功能应用
Jun 19 PHP
PHP实现的简单分页类及用法示例
May 06 PHP
解决laravel session失效的问题
Oct 14 PHP
laravel excel 上传文件保存到本地服务器功能
Nov 14 PHP
PHP 加密 Password Hashing API基础知识点
Mar 02 PHP
PHP实现发送邮件的方法(基于简单邮件发送类)
Dec 17 #PHP
PHP响应post请求上传文件的方法
Dec 17 #PHP
CentOS下PHP7的编译安装及MySQL的支持和一些常见问题的解决办法
Dec 17 #PHP
通过PHP简单实例介绍文件上传
Dec 16 #PHP
PHP上传文件参考配置大文件上传
Dec 16 #PHP
谈谈 PHP7新增功能
Dec 16 #PHP
谈谈PHP中substr和substring的正确用法及相关参数的介绍
Dec 16 #PHP
You might like
JAVA/JSP学习系列之六
2006/10/09 PHP
dede3.1分页文字采集过滤规则详说(图文教程)续二
2007/04/03 PHP
解析如何在PHP下载文件名中解决乱码的问题
2013/06/20 PHP
PHP将进程作为守护进程的方法
2015/03/19 PHP
Smarty3配置及入门语法
2017/02/22 PHP
javascript实现仿银行密码输入框效果的代码
2007/12/13 Javascript
在linux中使用包管理器安装node.js
2015/03/13 Javascript
JQuery鼠标移到小图显示大图效果的方法
2015/06/10 Javascript
javascript数字验证的实例代码(推荐)
2016/08/20 Javascript
javascript中json基础知识详解
2017/01/19 Javascript
js 实现获取name 相同的页面元素并循环遍历的方法
2017/02/14 Javascript
js时间查询插件使用详解
2017/04/07 Javascript
vue写h5页面的方法总结
2019/02/12 Javascript
vue商城中商品“筛选器”功能的实现代码
2020/07/01 Javascript
Nodejs 微信小程序消息推送的实现
2021/01/20 NodeJs
Python中的super()方法使用简介
2015/08/14 Python
python 异常处理总结
2016/10/18 Python
python网络编程调用recv函数完整接收数据的三种方法
2017/03/31 Python
python遍历小写英文字母的方法
2019/01/02 Python
python批量创建指定名称的文件夹
2019/03/21 Python
详解用python写一个抽奖程序
2019/05/10 Python
通过PYTHON来实现图像分割详解
2019/06/26 Python
numpy.transpose()实现数组的转置例子
2019/12/02 Python
基于Python执行dos命令并获取输出的结果
2019/12/30 Python
pygame实现飞机大战
2020/03/11 Python
如何用Anaconda搭建虚拟环境并创建Django项目
2020/08/02 Python
video结合canvas实现视频在线截图功能
2018/06/25 HTML / CSS
幼师自我鉴定范文
2013/10/01 职场文书
父亲追悼会答谢词
2014/01/17 职场文书
房屋租赁协议书
2014/04/10 职场文书
小学生环保演讲稿
2014/04/25 职场文书
安全检查汇报材料
2014/12/26 职场文书
小学语文课《掌声》教学反思
2016/03/03 职场文书
SQL优化老出错,那是你没弄明白MySQL解释计划用法
2021/11/27 MySQL
漫画「处刑少女的生存之道」第3卷封面公开
2022/03/21 日漫
JS中forEach()、map()、every()、some()和filter()的用法
2022/05/11 Javascript