0

私は自分のエンティティでいくつかの役立つ方法に取り組んでいます。

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/share/ php:/usr/share/pear') /zendboyerplate/library/Doctrine/Common/ClassLoader.php の 148 行目 zend はクラス宣言を探しているようです (そして、php に含まれているクラスは使用していません)。

「新しいクラス」宣言ごとに同じエラー。ライブラリに含まれる独自のクラスを使用すると、すべて問題ありません。( @new SoapClient() でも試しましたが、結果はありません)。

4

1 に答える 1

2

これは名前空間に関連していると思います。エラーのある行を次のように変更してみてください。

$this->api_client = new \SoapClient($api_address);

これにより、問題が発生しているファイルの先頭で宣言されていると思われる名前空間の代わりに、PHPSoapClientを使用するように強制されます。

于 2012-07-07T22:16:33.813 に答える