如何将PHPMailer导入使用名称空间的类中?

丹·科斯蒂内尔

我具有以下项目文件夹和文件:(请注意,我想将类与库(例如PHPMailer,HTMLPurifier等)分开)

在此处输入图片说明

在我的Register.php文件中,我具有Register类:

namespace Classes\Register;

class Register
{
    public function register()
    {
        // ...
        $m = new PHPMailer;
        // send email
    }
}

因此,在我的Register类(位于classes /目录中)中,我想使用PHPMailer类(相对于Register.php文件,位于上方一个目录中的libs / PHPMailer中)。如何将PHPMailer类包含到Register.php文件中?

我试过了:

 $m = new \PHPMailer; // to use the class from the global scope, but it doesn't work.

或者,如果我包含PHPMailerAutoload.php,则如下所示:

namespace Classes\Register;

require '../libs/PHPMailer/PHPMailerAutoload.php';

// and then into register() method:
$m = new PHPMailer;

我收到一条错误消息: Fatal error: Class 'Classes\Register\PHPMailer' not found

有任何想法吗?非常感谢!

斯文

您没有给出为什么它不起作用的原因,因为它是正确的:

 $m = new \PHPMailer;

或者,您可以将类导入自己的名称空间:

use PHPMailer;

$m = new PHPMailer;

关于类名,基本上是相同的。

如果两个版本都不起作用,那么您将遇到其他问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何将lodash直接导入JavaScript中的自定义名称空间

如何将模块中的类公开给TypeScript中的全局名称空间?

如何将Autofac与DynamicProxy一起使用以确定目标代理类的名称空间

如何将具有相同名称和相同名称空间(包名称)的Java类导入一个Maven项目

如何将组件导入Angular中的Service类

如何将子模块中的类/函数相互导入?

如何将swift类导入到ViewController中?

如何将类添加到自定义名称空间?

打字稿:库文件中的名称空间和类名称相同时,导入名称空间

PHP:如何从导入的名称空间动态创建类?

如何将Groovy类导入Jenkinfile?

如何使用名称空间和类?

使用名称空间访问扩展类中的$ this

使用TypeScript将导入导出为名称空间

如何将命名导入放入命名空间?

如何将子模块导入父命名空间?

如何使用变量的类名访问PHP中带有名称空间的类常量?

如何将Java的XPath库与XML名称空间结合使用?

如何将SHCreateItemFromParsingName与Shell命名空间中的名称一起使用?

使用多个文件时,如何将函数保留在全局名称空间之外?

如何仅获取类名称而不使用名称空间

如何将GeoJSON对象属性设置为HighMaps中名称以外的类名称

如何使用其他名称空间中的对象以及如何在PHP中导入名称空间

如何将音符名称和频率存储为数据以在Java中的其他类中使用

如何在iPython中从名称空间隐藏导入的模块?

如何导入在index.d.ts中定义的名称空间

如何在TypeScript中将名称空间与导入配合使用

在TypeScript中将导入的类与名称空间合并

如何将网关绑定到特定的名称空间?