0

我正在尝试在 Windows 机器上运行 .php 脚本。我首先尝试了旧版本的 php,它是 php 5.4.6,并在 php.ini 上启用了 php_curl(在 php 文件夹中找到)并在使用 cmd(c:\php\php.exe test.php) 运行我的脚本之后(我得到了这个错误:

php startup:unable to load dynamic library c:php\php_curl.dll' - The specified module could not be found

所以我将 c:/php 重命名为 c:/phpOld/ 并创建了另一个文件夹 (c:/php) 将较新版本的 php 文件解压缩到其中 (php-5.6.17-nts-Win32-VC11-x86.zip) . 我在名为php.ini-development 和 php.ini-production 的php 文件所在的文件夹中找到了两个 php.ini 文件。我在这两个文件上启用了 php_curl(将 ;extension=php_curl.dll 更改为 extension=php_curl.dll),运行脚本后我仍然收到此错误:

Fatal error: Call to undefined function curl_init() in

我去检查了 ext 文件夹,我看到 php_curl.dll 文件在那里!谁能告诉我为什么 php curl 没有运行,我收到上述错误?在此先感谢。

编辑:此脚本在网络服务器上正确运行,但在本地运行时给出空结果!以这种方式发出 curl post 请求是否有任何限制?

$data = array(
    'a'      => 'test1',
    'b'    => 'test2',

);


$url = "https://api.somewebsite.com/auth.aspx";    
$content = json_encode($data);

$curl = curl_init($url);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER,
        array("Content-type: application/json"));
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $content);

$json_response = curl_exec($curl);

$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);

curl_close($curl);

$response = json_decode($json_response, true);
echo "full Response:".$json_response;
4

0 回答 0