获取PHP可捕获的致命错误:类服务的对象\u Twilio\u TinyHttp无法转换为字符串

获取PHP可捕获的致命错误:类服务的对象\u Twilio\u TinyHttp无法转换为字符串,php,twilio,Php,Twilio,我正在设置Twilio并尝试向我的个人手机发送短信。但我得到的只是title+中的错误,这发生在第127行的Services/Twilio/Resource.php上: public function __toString() { $out = array(); foreach ($this as $key => $value) { if ($key !== "client" && $key !== "subresources") {

我正在设置Twilio并尝试向我的个人手机发送短信。但我得到的只是title+中的错误,这发生在第127行的Services/Twilio/Resource.php上:

public function __toString() {
    $out = array();
    foreach ($this as $key => $value) {
        if ($key !== "client" && $key !== "subresources") {
            $out[$key] = (string)$value; <----------------HERE
        }
    }
    return json_encode($out);
}
我坐了好几个小时,似乎想不出问题所在。也许有人用过这个斜纹布,至少可以给我一个提示去哪里看

全部错误:

PHP Catchable fatal error:  Object of class Services_Twilio_TinyHttp could not be converted to string in ../Services/Twilio/Resource.php on line 127, referer: 

错误不是例外,它们不是
throw
n并且不能
catch
ed。错误可以由注册到的错误处理程序处理。现在,有几种致命错误类型,如
E_error
E_CORE_error
,任何错误处理程序都无法处理这些错误;这些错误是致命的,会停止脚本执行、句点(或者完全停止,如果您愿意;)。但是还有一个
E\u RECOVERABLE\u错误
,描述如下:

可捕获的致命错误。它表明可能发生了危险错误,但没有使发动机处于不稳定状态。如果错误未被用户定义的句柄捕获(另请参见
set\u error\u handler()
),则应用程序将中止,因为它是
E\u错误

因此,您可以使用自定义错误处理程序处理这些错误。您通常应该这样做,以编写自定义错误日志或发送警报邮件,但您还是应该在之后终止脚本(尽管您不是被迫这样做的)。这只是被描述为一个“可捕获的错误”,尽管它与
try..catch
无关



本例中出现错误的原因是您试图将对象强制转换为字符串,但对象不喜欢这样。您应该查看类的文档,了解如何处理对象以及如何从中获取所需的数据<代码>(字符串)
不起作用,简单明了。

您应该能够通过调用echo将任何资源(例如$client->account,$message=$client->account->messages->get('MM123')转换为字符串


看起来您正在尝试将http客户端($client->http)强制转换为字符串。http客户端没有定义tostring方法。

&确切的错误消息是?PHP的一个讽刺之处是,您实际上无法捕获可捕获的致命错误。错误不是例外,只能由错误处理程序捕获。
catch
。谢谢您的回答
PHP Catchable fatal error:  Object of class Services_Twilio_TinyHttp could not be converted to string in ../Services/Twilio/Resource.php on line 127, referer: