我在php代码中设置post参数时遇到问题。我有以下几行代码:
$ch = curl_init();
curl_setopt($ch, CURLOPT_POSTFIELDS, "a=b");
在我的本地计算机上,上面对curl_setopt的调用有效,并返回true。但是,在我的服务器上,它返回false。我能想到的两者之间的唯一区别是在我的本地机器上我有php 5.3.8而服务器有5.3.10。
有关为什么会发生这种情况或我可以采取哪些措施来解决这个问题的想法?提前谢谢。
其他信息: 上面那些代码行实际上是我尝试调试正在看到的卷曲问题并将问题缩小到失败的行的结果。我遇到的问题实际上是在Twilio api中。在我的代码中,我打电话:
$twilioClient = new Services_Twilio($twilioAccountSid, $twilioAccountToken);
$message = $twilioClient->account->sms_messages->create($fromNumber, $toNumber, $body);
并且该调用正在抛出异常。通过函数调用来转到Services_Twilio_TinyHttp-> call()函数。第62行(curl_setopt_array)返回false事件,尽管它在本地工作。可以在https://github.com/twilio/twilio-php/blob/master/Services/Twilio/TinyHttp.php
找到该代码答案 0 :(得分:1)
看起来你错过了这段代码:
curl_setopt($ch, CURLOPT_POST, TRUE);
将CURLOPT_POST设置为TRUE的定义是: TRUE以执行常规HTTP POST。此POST是普通的application / x-www-form-urlencoded类型,最常用于HTML表单。
您可以在此处阅读各种curl_setopt选项:http://php.net/manual/en/function.curl-setopt.php