使用字符串发送Curl POST

时间:2016-03-11 01:02:49

标签: php curl

我试图向EndPoint发出Curl请求。该请求有一个字符串文本的参数。端点上的函数仅返回相同的字符串。问题是Endpoint的函数只返回String的第一个单词。

以下是我使用的代码:

$params = $_SESSION['search'].'/'.$_SESSION['page'];
$curl   = curl_init();
curl_setopt_array($curl, array(
    CURLOPT_RETURNTRANSFER  => true,
    CURLOPT_USERAGENT       => 'Stlfinder',
    CURLOPT_POST            => false,
    CURLOPT_URL             => "mydomain.com/api/search/$params"
));
$resultados = curl_exec($curl);
curl_close($curl);
$resultados   = json_decode($resultados);
print_r($resultados);

这就是我得到的:

stdClass Object ( [result] => The )

并且发送的字符串是:'豪宅书'

卷曲中是否有任何遗漏?

1 个答案:

答案 0 :(得分:3)

由于您的查询字符串有空格,因此它会在第一个空格处被切断。我认为你需要这样的东西:

$params = rawurlencode($_SESSION['search'].'/'.$_SESSION['page']);

这将用%20替换空格,并将处理其他字符串中的其他非字母字符。