我在我的实体中正在研究一些有用的方法。
private function setApi($api_address,$api_username,$api_password){
$this->api_address = $api_address;
$this->api_username = $api_username;
$this->api_password = $api_password;
$this->api_client = new SoapClient($api_address); // error
}
警告:require(App / Entity / SoapClient.php):无法打开流:第148行/zendboilerplate/library/Doctrine/Common/ClassLoader.php中没有此类文件或目录致命错误:require():失败打开所需的'App / Entity / SoapClient.php'(include_path ='/ zendboilerplate / application /../ library:/ zendboilerplate / application /../ library / Bisna / Application / Resource:/ zendboilerplate / library:。:/ usr第148行/zendboilerplate/library/Doctrine/Common/ClassLoader.php中的/ share / php:/ usr / share / pear') 看来zend正在寻找一个类声明(并且它不会在php中使用包含的类)。
每个“新类”声明的相同错误。 使用库中包含的我自己的类一切都很好。 (也尝试使用@new SoapClient()但没有结果)。
答案 0 :(得分:2)
我猜这是名称空间相关的。尝试将错误的行更改为:
$this->api_client = new \SoapClient($api_address);
应该强制它使用PHP SoapClient而不是可能在您遇到问题的文件开头声明的命名空间。