我最近有一个上一个问题,根本没有答案。我厌倦了一切,但无济于事。不,我问了另一个问题,因为我觉得我的代码中的某些内容不正确。看看我的代码。
我带参数的API的网址
http://localhost/sample/index.php/2/users/mil/minoza/09876543212
**数组**
if ($request[0] == 2) {
$data = array(
"table" => $request[1],
"fname" => $request[2],
"lname" => $request[3],
"cntct" => $request[4]
);
CURL和网址的代码
if ($request[0] == 2) {
$str_data = json_encode($data);
$post_elements = array('data'=>$str_data);
echo $url_send;
echo "</br>";
print_r($post_elements);
die();
sput($url_send, $post_elements);
echo sput($url_send, $post_elements);
}
痰功能(CURL)
function sput($url, $fields)
{
$ch = curl_init($url);
$post_field_string = http_build_query($fields);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt( $ch, CURLOPT_POSTFIELDS, $post_field_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
curl_close ($ch);
return $response;
}
方案: 你注意到在CURL和URL的代码中我有一个echo,echo,print_r和一个die。这是我放置的原因,因为我想检查我将用于该功能的变量中的数据是否存在。它确实有数据。
结果
http://localhost/api.php/
Array ( [data] => {"table":"users","fname":"mil","lname":"minoza","cntct":"09876543212"} )
MY API.PHP
$method = $_SERVER['REQUEST_METHOD'];
if ($method == 'PUT') {
$data = preg_replace('/[^a-z0-9_]+/i','',array_shift($_POST));
echo $data."AMF";
die();
}
当我在api.php中时,我不知道如何使用index.php Curl获取我传递的数据数组。这是结果
AMF
我要求$ _POST是正确的,因为我在我的CUrl中的index.php中有一条卷曲状态,
curl_setopt( $ch, CURLOPT_POSTFIELDS, $post_field_string);
请有人帮忙。我之前的问题完全被忽略了。
感谢。