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 相关文章推荐
php adodb操作mysql数据库
Mar 19 PHP
PHP 单引号与双引号的区别
Nov 24 PHP
php 获取客户端的真实ip
Nov 30 PHP
PHP禁止个别IP访问网站
Oct 30 PHP
PHP使用glob函数遍历目录或文件夹的方法
Dec 16 PHP
php+html5使用FormData对象提交表单及上传图片的方法
Feb 11 PHP
一个非常完美的读写ini格式的PHP配置类分享
Feb 12 PHP
php中文繁体和简体相互转换的方法
Mar 21 PHP
php实现约瑟夫问题的方法小结
Mar 23 PHP
Zend Framework基本页面布局分析
Mar 19 PHP
php微信公众号开发模式详解
Nov 28 PHP
PHP数组array类常见操作示例
May 15 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中strstr、strrchr、substr、stristr四个函数的区别总结
2014/09/22 PHP
PHP实现QQ空间自动回复说说的方法
2015/12/02 PHP
extjs 学习笔记 四 带分页的grid
2009/10/20 Javascript
ListBox实现上移,下移,左移,右移的简单实例
2014/02/13 Javascript
jquery实现鼠标滑过显示提示框的方法
2015/02/05 Javascript
JavaScript DSL 流畅接口(使用链式调用)实例
2015/03/15 Javascript
JavaScript通过字典进行字符串翻译转换的方法
2015/03/19 Javascript
Node.js 去掉种子(torrent)文件里的邪恶信息
2015/03/27 Javascript
AngularJS入门教程之AngularJS 模板
2016/08/18 Javascript
jquery datatable服务端分页
2016/08/31 Javascript
Node.js开启Https的实践详解
2016/10/25 Javascript
jQuery向webApi提交post json数据
2017/01/16 Javascript
简单实现js点击展开二级菜单功能
2017/05/16 Javascript
layui实现下拉框三级联动
2019/07/26 Javascript
JS自定义右键菜单实现代码解析
2020/07/16 Javascript
JavaScript中条件语句的优化技巧总结
2020/12/04 Javascript
利用python获得时间的实例说明
2013/03/25 Python
python算法学习之计数排序实例
2013/12/18 Python
使用C语言扩展Python程序的简单入门指引
2015/04/14 Python
python Socket之客户端和服务端握手详解
2017/09/18 Python
python将控制台输出保存至文件的方法
2019/01/07 Python
利用ctypes获取numpy数组的指针方法
2019/02/12 Python
Python按钮的响应事件详解
2019/03/04 Python
Django中提供的6种缓存方式详解
2019/08/05 Python
Python 合并多个TXT文件并统计词频的实现
2019/08/23 Python
python GUI库图形界面开发之PyQt5动态加载QSS样式文件
2020/02/25 Python
10款最佳Python开发工具推荐,每一款都是神器
2020/10/15 Python
初中班主任经验交流材料
2014/05/16 职场文书
歌颂党的演讲稿
2014/09/10 职场文书
教师党员自我评价范文
2015/03/04 职场文书
2015关于重阳节的演讲稿
2015/03/20 职场文书
nginx配置ssl实现https的方法示例
2021/03/31 Servers
解析laravel使用workerman用户交互、服务器交互
2021/04/28 PHP
浅谈JS和Nodejs中的事件驱动
2021/05/05 NodeJs
Python编程源码报错解决方法总结经验分享
2021/10/05 Python
win10怎么设置右下角图标不折叠?Win10设置右下角图标不折叠的方法
2022/07/15 数码科技