我正在尝试连接到twilio以发送短信。它工作但它停止了。我从假期回来后。
短信发送工作正常,但我不能回应Twilio的回答。
我发现我的PHP文件在PHP 5.3上工作正常,但在5.6上却抛出错误。所以它与回应$ client有关,但我不知道什么是错的。
这是我的代码:
// this line loads the library
require dirname(__FILE__) . "../../../includes/Services/Twilio.php";
$account_sid = 'XXX';
$auth_token = 'XXX';
$client = new Services_Twilio($account_sid, $auth_token);
//Get the submitted data
$postdata = file_get_contents("php://input");
$request = json_decode($postdata);
$mamiMobile = $request -> mamiPhone;
$text = $request -> smsoffer;
$client->account->messages->create(array(
'To' => $mamiMobile,
'From' => "+41798071977", //From Number from Twilio
'Body' => $text
));
//This works on php 5.3 but on 5.6 it is not working!
echo ($client);
;?>
我在PHP.log中遇到的错误:
[03-Mar-2016 18:18:16 Europe/Zurich] PHP Catchable fatal error: Method Services_Twilio::__toString() must return a string value in /Applications/MAMP/htdocs/angulr-bootstrap-admin-web-app-with-angularjs/angular/includes/php/sms_connector_twillio_offer.php on line 34
答案 0 :(得分:1)
Twilio开发者传道者在这里。
为了回应Twilio的回应,你不应该回复$client
本身,而是回应$client->account->messages->create
。为什么不尝试类似的东西:
$response = $client->account->messages->create(array(
'To' => $mamiMobile,
'From' => "+41798071977", //From Number from Twilio
'Body' => $text
));
echo ($response);
为了回答PHP 5.3和5.6之间的变化,我的猜测是这些版本之间发生的事情$this
如何响应foreach
,使this code不再按预期工作。
你可以raise a bug in the GitHub issues进行twilio-php项目,以便有人可以看一下吗?谢谢!