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
php 分页函数multi() discuz
Jun 21 PHP
多个PHP中文字符串截取函数
Nov 12 PHP
php Calender(日历)代码分享
Jan 03 PHP
10个超级有用值得收藏的PHP代码片段
Jan 22 PHP
php生成图片缩略图的方法
Apr 07 PHP
Laravel SQL语句记录方式(推荐)
May 26 PHP
PHP迭代器和迭代的实现与使用方法分析
Apr 19 PHP
PHP实现的CURL非阻塞调用类
Jul 26 PHP
thinkPHP+LayUI 流加载实现功能
Sep 27 PHP
基于laravel Request的所有方法详解
Sep 29 PHP
在TP5数据库中四个字段实现无限分类的示例
Oct 18 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
php 文章采集正则代码
2009/12/28 PHP
php结合表单实现一些简单功能的例子
2011/06/04 PHP
解析在apache里面给php写虚拟目录的详细方法
2013/06/24 PHP
PHP正则提取不包含指定网址的图片地址的例子
2014/04/21 PHP
php转换颜色为其反色的方法
2015/04/27 PHP
php 中奖概率算法实现代码
2017/01/25 PHP
替换php字符串中的单引号为双引号的方法
2017/02/16 PHP
Thinkphp 在api开发中异常返回依然是html的解决方式
2019/10/16 PHP
JavaScript简单实现网页回到顶部功能
2013/11/12 Javascript
JS动态添加与删除select中的Option对象(示例代码)
2013/12/20 Javascript
jQuery Easyui Datagrid实现单行的上移下移及保存移动的结果
2016/08/15 Javascript
js基本算法:冒泡排序,二分查找的简单实例
2016/10/08 Javascript
jQuery UI插件实现百度提词器效果
2016/11/21 Javascript
JS时间控制实现动态效果的实例讲解
2017/07/31 Javascript
vue实现裁切图片同时实现放大、缩小、旋转功能
2018/03/02 Javascript
浅谈Webpack下多环境配置的思路
2018/06/27 Javascript
通过实例讲解JS如何防抖动
2019/06/15 Javascript
[15:46]教你分分钟做大人——沙王
2015/03/11 DOTA
[45:16]完美世界DOTA2联赛循环赛 IO vs FTD BO2第二场 11.05
2020/11/06 DOTA
wxPython中文教程入门实例
2014/06/09 Python
python制作一个桌面便签软件
2015/08/09 Python
Python实现matplotlib显示中文的方法详解
2018/02/06 Python
Python功能点实现:函数级/代码块级计时器
2019/01/02 Python
PyCharm更改字体和界面样式的方法步骤
2019/09/27 Python
浅谈对pytroch中torch.autograd.backward的思考
2019/12/27 Python
python 图像的离散傅立叶变换实例
2020/01/02 Python
在tensorflow中实现去除不足一个batch的数据
2020/01/20 Python
python中使用asyncio实现异步IO实例分析
2021/02/26 Python
支票、地址标签、包装纸和慰问卡:Current Catalog
2018/01/30 全球购物
领先的英国注册在线药房 :Simply Meds Online
2019/03/28 全球购物
拉斯维加斯城市观光通行证:Las Vegas Pass
2019/05/21 全球购物
yy结婚证婚词
2014/01/10 职场文书
令人印象深刻的自荐信
2014/05/25 职场文书
优质服务标语口号
2015/12/26 职场文书
教你怎么用python selenium实现自动化测试
2021/05/27 Python
JavaScript中reduce()的用法
2022/05/11 Javascript