我在我的邮递员 API 中通过 POST 方法获取一个数组,在获取后我试图拆分数组,然后将每个数组值分配给一个变量,将其存储在 XML 代码中并将该 XML 代码发送到服务器。我知道我的代码在数组拆分中写错了。这是我的 POSTMAN API: 响应中的服务器错误
我知道这个错误正在发生,因为由于代码中的数组语法,请求无法处理到服务器,这是我的代码:
<?php
public function price(Request $request)
{
$information = $this->validate($request, [
'prices' => 'required'
]);
$prices = $information['prices']; //Getting the array from postman api
list($array1, $array2, $array3, $array4, $array5) = array_chunk($prices, 1); //assigning variables
$xml = "<?xml version='1.0' encoding='UTF-8'?>
<methodCall>
<methodName>update_plan_prices</methodName>
<params>
<param>
<value>
<struct>
<value>
<array>
<data>
<value>
<int>" . $array1 . "</int>
</value>
<value>
<int>" . $array2 . "</int>
</value>
<value>
<int>" . $array3 . "</int>
</value>
<value>
<int>" . $array4 . "</int>
</value>
<value>
<int>" . $array5 . "</int>
</value>
</data>
</array>
</value>
</struct>
</value>
</param>
</params>
</methodCall>
";
$url = "https://my_server_url/";
$send_context = stream_context_create(array(
'http' => array(
'method' => 'POST',
'header' => 'Content-Type: application/xml',
'content' => $xml
)
));
$response = file_get_contents($url, false, $send_context);
return response()->json($response);
}
?>
我已经做到了。通过以这种形式在 POSTMAN 发布请求中发送数组:
“价格”:10,20,30,40,50
然后在代码中,当我调用发布请求时,我以这种形式划分了数组(而不是使用array_chunk,我使用了explode):
并以这种形式发送到 XML 代码: