相关疑难解决方法(0)

为什么我的 PHP 脚本中的 curl 无法发布到 Twitter?

我有一个使用 Oauth 发布到 Twitter 的 PHP 脚本。每当我使用它时,我都会收到以下错误:

PHP Notice: Use of undefined constant CURLOPT_CAINFO - assumed 'CURLOPT_CAINFO' in /var/www/example.com/myWebApp/vendor/abraham/twitteroauth/src/TwitterOAuth.php on line 353
PHP Notice: Use of undefined constant CURLOPT_CONNECTTIMEOUT - assumed 'CURLOPT_CONNECTTIMEOUT' in /var/www/example.com/myWebApp/vendor/abraham/twitteroauth/src/TwitterOAuth.php on line 354
PHP Notice: Use of undefined constant CURLOPT_HEADER - assumed 'CURLOPT_HEADER' in /var/www/example.com/myWebApp/vendor/abraham/twitteroauth/src/TwitterOAuth.php on line 355
PHP Notice: Use of undefined constant CURLOPT_HTTPHEADER - assumed 'CURLOPT_HTTPHEADER' in /var/www/example.com/myWebApp/vendor/abraham/twitteroauth/src/TwitterOAuth.php on line 356
PHP Notice: Use of undefined constant CURLOPT_RETURNTRANSFER - assumed 'CURLOPT_RETURNTRANSFER' in /var/www/example.com/myWebApp/vendor/abraham/twitteroauth/src/TwitterOAuth.php on …
Run Code Online (Sandbox Code Playgroud)

php curl

5
推荐指数
1
解决办法
1万
查看次数

检测cURL是否有效?

这是警告.

警告:curl_setopt_array()[function.curl-setopt-array]:当在safe_mode中或在第41行的/.../file.php中设置open_basedir时,无法激活CURLOPT_FOLLOWLOCATION

这就是我用来检测cURL的方法.如果未启用cURL,则会触发解决方法.

function curlEnabled() {
    if (ini_get('safe_mode') == 1)
        return 0;

    return in_array('curl', get_loaded_extensions());
}
Run Code Online (Sandbox Code Playgroud)

我发现在启用安全模式或禁用cURL的情况下有效地测试此功能是非常困难的.

有人能告诉我吗

  1. 该函数是否实际检测到PHP safe_mode?
  2. 它会检测cURL是否正确加载?

最后,如何改进此函数以捕获'无法激活'错误并返回0?

php curl

3
推荐指数
1
解决办法
2万
查看次数

标签 统计

curl ×2

php ×2