使用 PHP 格式化 HTTP POST 请求中的数据
Formatting data in HTTP POST request with PHP
我正在使用 API,它举例说明了他们希望如何格式化我即将提出的 POST 请求的数据。这是他们的例子:
un=chris&
key=xxxx&
origin=plot&
platform=lisp&
args=[[0, 1, 2], [3, 4, 5], [1, 2, 3], [6, 6, 5]]&
kwargs={"filename": "plot from api",
"fileopt": "overwrite",
"style": {
"type": "bar"
},
"traces": [1],
"layout": {
"title": "experimental data"
},
"world_readable": true
}
我对如何将 PHP 中现有数组中的这些数据放在一起感到困惑。据我了解,该示例显示了一个仅部分编码的编码 "string" ?截至目前,我正在通过从数组中提取键和值来自行将字符串放在一起。
我正在寻找一种更简洁的方法来使用现有方法来完成此操作?
我相信使用 http_build_query 会为您解决这个问题。
给定示例,这里是如何使用它的示例:
$args = array(array(0,1,2), array(3,4,5), array(1,2,3), array(6,6,5));
$kwargs = array(
'filename' => 'plot from api',
'fileopt' => 'overwrite'
'style' => array('type' => 'bar'),
'traces' => array(1),
'layout' => array('title' => 'experimental data'),
'word_readable' => true
);
$request = array(
'un' => 'chris',
'key' => 'xxx',
'origin' => 'plot',
'platform' => 'lisp',
'args' => $args,
'kwargs' => $kwargs
);
$queryString = http_build_query($request);
echo $queryString;
我正在使用 API,它举例说明了他们希望如何格式化我即将提出的 POST 请求的数据。这是他们的例子:
un=chris&
key=xxxx&
origin=plot&
platform=lisp&
args=[[0, 1, 2], [3, 4, 5], [1, 2, 3], [6, 6, 5]]&
kwargs={"filename": "plot from api",
"fileopt": "overwrite",
"style": {
"type": "bar"
},
"traces": [1],
"layout": {
"title": "experimental data"
},
"world_readable": true
}
我对如何将 PHP 中现有数组中的这些数据放在一起感到困惑。据我了解,该示例显示了一个仅部分编码的编码 "string" ?截至目前,我正在通过从数组中提取键和值来自行将字符串放在一起。 我正在寻找一种更简洁的方法来使用现有方法来完成此操作?
我相信使用 http_build_query 会为您解决这个问题。 给定示例,这里是如何使用它的示例:
$args = array(array(0,1,2), array(3,4,5), array(1,2,3), array(6,6,5));
$kwargs = array(
'filename' => 'plot from api',
'fileopt' => 'overwrite'
'style' => array('type' => 'bar'),
'traces' => array(1),
'layout' => array('title' => 'experimental data'),
'word_readable' => true
);
$request = array(
'un' => 'chris',
'key' => 'xxx',
'origin' => 'plot',
'platform' => 'lisp',
'args' => $args,
'kwargs' => $kwargs
);
$queryString = http_build_query($request);
echo $queryString;