php curl 多维数组,PHP 使用CURL 传递多维数组问题
现在要写一个API,但是用curl传参数时多维数组的传递有问题
{ $post_data = array( 'auth-userid' => 611510, 'api-key' => 'api', 'domain-name'=>array('domain1','domain2'), 'tlds' => 'com', ); $result=http_build_query($post_data); var_dump($result); }
开始用的时候一直出现 domain 参数的丢失报错,然后就看下传递的数据,是这样的
string 'auth-userid=611510&api-key=api&
domain-name%5B0%5D=domain1&domain-name%5B1%5D=domain2&tlds=com' (length=93);
而我要传的应该是
'auth-userid=611510&api-key=api&
domain-name=domain1&domain-name=domain2&tlds=com'
这样传才不会报错,为什么用了http_build_query(),二维数组就会出现这个%5B0%5D,和%5B1%5D,这怎么解决
回复讨论(解决方案)
其实这个问题很简单。
http_build_query ? 生成 URL-encode 之后的请求字符串
产生的是一个url encode 的字符串。里面都是已经给encode 。
你可以使用$post_data = array( 'auth-userid' => 611510, 'api-key' => 'api', 'domain-name'=>array('domain1','domain2'), 'tlds' => 'com', ); $result=http_build_query($post_data); var_dump($result); var_dump(urldecode($result));
这样来解决,数据都是domain-name[0]=domain1&domain-name[1]= 这样来传递。
欢迎你加入到技术群,来学习更多的技术 231566327
%5B0%5D 是 [] 一对方括号
这是按 php 的规则生成的
如果对方不是 php 则要按 domain-name[] 这个名字访问 domain-name 成员
或者你就把它删掉
$result = str_replace('%5B0%5D', '', http_build_query($post_data));
若对方是 php 的话,就一定不能删了。否则就会少数据了
那还是地址给url encode
本文原创发布php中文网,转载请注明出处,感谢您的尊重!
php curl 多维数组,PHP 使用CURL 传递多维数组问题相关推荐
- 二维数组作为形参,传递二维数组的值
二维数组作为形参,传递二维数组的值 void trfind(int (*Array)[3]); void trfind(int (*Array)[3]) {int a[][3] = {1, 2, 3, ...
- ajax获取php的数组,使用AJAX请求获取数组并将其传递到php数组中 - javascript
我正在为下一个问题苦苦挣扎:我有一个ajax请求,该请求将变量传递给PHP文件. PHP处理该变量并返回一个数组.我需要取回该数组,所以我使用了AJAX成功回调函数,但是我只能打印出数组,仅此而已.我 ...
- php curl post数组_PHP发起curl POST请求时传递数组
使用 PHP 的 curl 可以发起 HTTP 外部请求,但是发起 POST 请求时,是无法直接传递数组的,从 curl 层面来说,也没有所谓的数组的概念,而更加通用也更合理的传递数据的格式其实是键值 ...
- php curl密码控件,检索通过curl传递的用户名,密码参数 - php
我正在尝试使用curl将用户名和密码参数发送到url,我想检索它们.我将参数发送到页面,如下所示: $curl = curl_init('http://localhost/sample.php'); ...
- php curl 批量,关于用php的curl批量抓取内容
先上个单个采集的curl访问案例<?php $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, 'www.baidu.com'); curl ...
- Numpy 一维、二维数组、size/dtype/shape属性、数组函数arange/linspace/logspace /diag/zeros/ones/random 、多维数组索引和筛选)
参考: https://gitbook.cn/gitchat/column/undefined/topic/5e3bceadec8d9033cf924665 打开 IPython ,创建 Python ...
- VB.NET 数组的定义 动态使用 多维数组
我们都知道在全部程序设计语言中数组都是一个非常重要的概念,数组的作用是同意程序猿用同一个名称来引用多个变量,因此採用数组索引来区分这些变量.非常多情况下利用数组索引来设置一个循环,这样就能够高效地处理 ...
- Python使用numpy函数vsplit垂直(行角度)拆分numpy数组(返回拆分后的numpy数组列表)实战:垂直拆分二维numpy数组、split函数垂直拆分二维numpy数组
Python使用numpy函数vsplit垂直(行角度)拆分numpy数组(返回拆分后的numpy数组列表)实战:垂直拆分二维numpy数组.split函数垂直拆分二维numpy数组 目录
- Python使用numpy函数hsplit水平(按列)拆分numpy数组(返回拆分后的numpy数组列表)实战:水平(按列)拆分二维numpy数组、split函数水平(按列)拆分二维numpy数组
Python使用numpy函数hsplit水平(按列)拆分numpy数组(返回拆分后的numpy数组列表)实战:水平(按列)拆分二维numpy数组.split函数水平(按列)拆分二维numpy数组 目 ...
- php某列为键数组为值,PHP 将二维数组中某列值作为数组的键名 -- 超实用
有时候,想通过数组的中某字段值, 然后再在二维数组中获取存在该字段值的数组: 一般能想到的就是foreach 遍历比较一下跟该字段值一样,就获取到想要的数组,如下: //测试二维数组 $arr =ar ...
最新文章
- virtualbox安装centos7使用nat+hostonly的网络模式
- vb.net中的-String类
- iOS游戏开发教程资源
- latex 不等于_生活中养成这8个习惯,就算不运动,照样瘦!
- EYQiPa,梦开始的地方
- linux内核那些事之struct page
- SQL Server数据库快照
- linux centos目录结构(二)
- 51单片机——独立按键
- 如何将wav转为mp3格式,wav中间mp3步骤
- 【论文阅读】提升的自动作文评分通过Prompt预测和匹配
- 小熊、九阳、苏泊尔,小家电玩家们乱了阵脚?
- 【Linux】Linux的管道
- 7、MyBatis分页
- 非旋treap套线段树
- 1、镜像、容器相关命令、Dockerfile
- g1gc调优的一次实战记录
- QChart绘制占比图,但是以时间轴为X轴
- 给大家推荐ScratchJr 少儿编程课程,感觉讲的还可以,内容比较清晰,而且前面还有幼儿音乐也比较好听
- 《STM32从零开始学习历程》——I2C向EEPROM写入一字节数据(I2C硬件)