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实现用户认证及管理完全源码
Mar 11 PHP
用PHP查询搜索引擎排名位置的代码
Jan 05 PHP
php关于array_multisort多维数组排序的使用说明
Jan 04 PHP
浅析is_writable的php实现
Jun 18 PHP
PHP中的替代语法简介
Aug 22 PHP
Yii中CGridView关联表搜索排序方法实例详解
Dec 03 PHP
thinkPHP3.1验证码的简单实现方法
Apr 22 PHP
php 生成Tab键或逗号分隔的CSV
Sep 24 PHP
php 时间time与日期date之间的使用详解及区别
Nov 07 PHP
thinkPHP中U方法加密传递参数功能示例
May 29 PHP
关于PHP虚拟主机概念及如何选择稳定的PHP虚拟主机
Nov 20 PHP
PHP多进程简单实例小结
Nov 09 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字符串截取函数用法分析
2014/11/25 PHP
PHP中使用php://input处理相同name值的表单数据
2015/02/03 PHP
php代码架构的八点注意事项
2016/01/25 PHP
PHP获取客户端及服务器端IP的封装类
2016/07/21 PHP
PHP开发中解决并发问题的几种实现方法分析
2017/11/13 PHP
javascript回车完美实现tab切换功能
2014/03/13 Javascript
基于jQuery.Hz2Py.js插件实现的汉字转拼音特效
2015/05/07 Javascript
JavaScript模拟实现键盘打字效果
2015/06/29 Javascript
使用impress.js制作幻灯片
2015/09/09 Javascript
Easyui Tree获取当前选择节点的所有顶级父节点
2017/02/14 Javascript
JS实现多张图片预览同步上传功能
2017/06/23 Javascript
trackingjs+websocket+百度人脸识别API实现人脸签到
2018/11/26 Javascript
详解js获取video任意时间的画面截图
2019/04/17 Javascript
详解vue2.0模拟后台json数据
2019/05/16 Javascript
利用JavaScript为句子加标题的3种方法示例
2021/01/05 Javascript
Vue 集成 PDF.js 实现 PDF 预览和添加水印的步骤
2021/01/22 Vue.js
[03:05]DOTA2英雄基础教程 嗜血狂魔
2013/12/10 DOTA
[01:45]亚洲邀请赛互动指南虚拟物品介绍
2015/01/30 DOTA
Python Dataframe 指定多列去重、求差集的方法
2018/07/10 Python
对python修改xml文件的节点值方法详解
2018/12/24 Python
python使用selenium登录QQ邮箱(附带滑动解锁)
2019/01/23 Python
Python实用工具FuckIt.py介绍
2019/07/02 Python
通过实例了解python property属性
2019/11/01 Python
numpy实现神经网络反向传播算法的步骤
2019/12/24 Python
Numpy实现卷积神经网络(CNN)的示例
2020/10/09 Python
Opencv python 图片生成视频的方法示例
2020/11/18 Python
详解Pycharm第三方库的安装及使用方法
2020/12/29 Python
html5 input元素新特性_动力节点Java学院整理
2017/07/06 HTML / CSS
在HTML5 canvas里用卷积核进行图像处理的方法
2018/05/02 HTML / CSS
写一个函数,要求输入一个字符串和一个字符长度,对该字符串进行分隔
2015/07/30 面试题
大学本科毕业生求职简历的自我评价
2013/10/09 职场文书
数控技校生自我鉴定
2014/03/02 职场文书
教师节感恩老师演讲稿
2014/08/28 职场文书
杨善洲观后感
2015/06/04 职场文书
新郎结婚感言
2015/07/31 职场文书
【TED出品】天梯非主流开心游1700 划水骑士
2022/03/31 魔兽争霸