2

请告诉我为什么我必须放在"\"前面\SoapClient。当我删除"\"时,我有一个错误。

public function indexAction($name)
{

    try {
            $client = new \SoapClient('some WSDL', array('trace' => 1));
            $a = array('Login'=>'1', 'Password'=>'1', 'LetterNo'=>'1');
            $response = $client->__soapCall('GetTracking', array($a));
            ladybug_dump($response->GetTrackingResult->Status);
        } catch (\SoapFault $e) {
            var_dump($e->getMessage(), $client->__getLastResponse()); die();
    }
    return array('response' => $response);
}

感谢帮助

4

1 回答 1

22

...因为您的控制器位于命名空间中,因此您在没有根斜杠的情况下调用实例化 SoapClient 会尝试从当前命名空间加载该对象。

App\Controller\SoapClient而不是SoapClient.

您可以使用use控制器顶部的语句将其纳入范围。use SoapClient;你会很高兴的。

于 2013-11-11T11:22:43.420 回答