Heim >Backend-Entwicklung >PHP-Tutorial >yii2 try cactch fängt die Ausnahme nicht ab, warum, danke

yii2 try cactch fängt die Ausnahme nicht ab, warum, danke

WBOY
WBOYOriginal
2016-09-03 00:14:101568Durchsuche

<code>/**
* 获得银行卡
* @param array $data
* @return string
*/
public function getBank($data) {
    try {
        $client = $this->getClient();
        $params = $this->getConnectParams(array('username' => $data['username']));
        $response = $client->GetBank($params);
        $return_json = $response->GetBankResult;
        $return_arr = json_decode($return_json) ;
        $status = $return_arr->result ;
    } catch (\Exception $e) {
        self::addLog($e);
        $status = 'error';
    }
}



</code>

Warum kann die von Yii ausgelöste Ausnahme „YiibaseErrorException“ die von Yii ausgelöste Ausnahme nicht abfangen? Wie kann das Problem des Abfangens sowohl von Systemausnahmen als auch der yiibaseErrorException-Ausnahme von Yii gelöst werden?

Antwortinhalt:

<code>/**
* 获得银行卡
* @param array $data
* @return string
*/
public function getBank($data) {
    try {
        $client = $this->getClient();
        $params = $this->getConnectParams(array('username' => $data['username']));
        $response = $client->GetBank($params);
        $return_json = $response->GetBankResult;
        $return_arr = json_decode($return_json) ;
        $status = $return_arr->result ;
    } catch (\Exception $e) {
        self::addLog($e);
        $status = 'error';
    }
}



</code>

Warum kann die von Yii ausgelöste Ausnahme „YiibaseErrorException“ die von Yii ausgelöste Ausnahme nicht abfangen? Wie kann das Problem des Abfangens sowohl von Systemausnahmen als auch der yiibaseErrorException-Ausnahme von Yii gelöst werden?

Möglicherweise ist Ihre PHP-Version zu niedrig. Ich erinnere mich, dass im Hinweis zur PHP-Version die Behebung ungewöhnlicher Probleme erwähnt wurde.
Ich habe es mit PHP5.5 versucht und das von Ihnen erwähnte Problem ist nicht aufgetreten.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn