Twilio PHP连接器/ Cant echo twillio答案

时间:2016-03-03 17:29:38

标签: php twilio twilio-php

我正在尝试连接到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

1 个答案:

答案 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项目,以便有人可以看一下吗?谢谢!