我和laravel一起工作-uzz。我在使用api时需要传递查询字符串,例如:
http:://domain.com/WS.php?secret=123123&app=app1&message=[key:value][key2:value][key3:value]
我正在使用此数组来收集获取数据:
$query = [
'query' => [
'app' => 'app1',
'secret' => '123123',
'message' => [
'key1' => 'value',
'key2' => 'value',
'key3' => 'value',
]
]
]
我不确定如何将其转换为请求的查询字符串。实际上,我一点都不熟悉[key:value]
这部分。我可以自己创建一个字符串(也许是最后一个办法),但是我正在寻找一种比这更好的方法。
答案 0 :(得分:1)
PHP数组支持的查询字符串语法为:
variable[key?]=value
所以
message[key]=value&message[key2]=value
受支持并不意味着唯一的方法,它只是处理PHP时的预期方法,因为它不需要您进行任何其他操作。
在您自己的应用程序中处理输入的方式实际上没有任何限制,如果他们将其设计为以这种方式读取标准输入或输入,则必须发送该信息。我怀疑是否有内置的功能可以支持此功能,但是为什么不能循环遍历数组以构建消息字符串:
foreach($message as $key=>$value) {
$str .= "[$key:$value]";
}