PHP CURL在工作时具有400

PHP CURL在工作时具有400,php,wordpress,php-curl,Php,Wordpress,Php Curl,检查URL时: 我有结果状态代码400 这是我的职责: public function callAPI($url) { $curl = curl_init(); error_log('Checking url: ' . $url); // OPTIONS: curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_HTTPHEADER, array( //'APIK

检查URL时:

我有结果状态代码
400

这是我的职责:

public function callAPI($url)
{
    $curl = curl_init();
    error_log('Checking url: ' . $url);

    // OPTIONS:
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_HTTPHEADER, array(
        //'APIKEY: 111111111111111111111',
        'Content-Type: application/json',
    ));

    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);

    // EXECUTE:

    $result = utf8_decode(curl_exec($curl));
    $result = preg_replace('/[\x00-\x1F\x80-\xFF]/', '', $result);

    if (!$result) {
        error_log('Connection Failure ' . $result . ' for url: ' . $url);
    }
    // Check if any error occurred
    $error_msg = '';
    $error_number = curl_errno($curl);
    $error_info = curl_error($curl);

    $info = curl_getinfo($curl);
    $httpCode = $info['http_code'];
    $request_ok = $httpCode == 200 || $httpCode == 201 || $httpCode == 204;
    error_log('$httpCode: ' . $httpCode);
    if (!$request_ok) {
        $info = curl_error($curl);
        $error_msg = $info ? $info : "Http code: " . $httpCode;
        error_log('Error while checking url: ' . $url . ' : ' . $error_msg);
    }

    curl_close($curl);
    return $error_msg;
}
但是,当我手动检查它时,甚至通过命令行中的curl检查它时,它工作得很好。
可能我在这里错过了curl的一些配置。

呵呵,最后我发现这是因为一个波兰字符:)

可以为命令行添加
curl
命令吗?curl-xget