繁体   English   中英

PHP - 如何在 class 方法中调用外部名称空间?

[英]PHP - How to call a an external name space within a class method?

我正在使用 AWS 的 SDK,它需要在我的代码中使用以下命名空间:

use Aws\Ses\SesClient;
use Aws\Exception\AwsException;

我想在我的 class 方法中调用这些命名空间,如下所示:

class EmailManager {
    public function sendEmail() {
        //new Aws\Ses\SesClient;

        use Aws\Ses\SesClient;
        use Aws\Exception\AwsException;

但是,当我调用命名空间Parse error: syntax error, unexpected 'use'

这是我迄今为止尝试过的并且工作过的。 但是,我希望能够在我的方法中调用它:

use Aws\Ses\SesClient;
use Aws\Exception\AwsException;

class EmailManager {

如何在我的 class 方法中调用此命名空间?

谢谢

您应该在 Class 之外插入use ,并按名称调用导入的 class: SesClient而不是完整的命名空间。 或者根本不use ,每次都通过完整的命名空间调用。

见文档:

适用于 PHP 的 AWS SDK

使用命名空间:别名/导入

use

require 'vendor/autoload.php';

use Aws\Ses\SesClient; 
use Aws\Exception\AwsException;

class EmailManager {
    public function sendEmail() {
        $SesClient = new SesClient([
            'profile' => 'default',
            'version' => '2010-12-01',
            'region' => 'us-east-2'
        ]);

use

class EmailManager {
    public function sendEmail() {
        $SesClient = new \Aws\Ses\SesClient([
            'profile' => 'default',
            'version' => '2010-12-01',
            'region' => 'us-east-2'
        ]);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM