PHP中的自动包含机制

时间:2017-11-13 16:22:57

标签: php

有没有办法可以文件同一文件夹 自动

我在应用程序中看到很多代码都有这种代码。具体的例子是swift邮件程序(如果有人知道的话)。但这也可以用作一般例子:

 Folder: vendor\swiftmailer\swiftmailer\lib\classes\Swift\Transport

 |
 --- File MailInvoker.php
                 |
                 --- interface Swift_Transport_MailInvoker
 |
 --- File SimpleMailInvoker.php
                 |
                 --- class Swift_Transport_SimpleMailInvoker implements Swift_Transport_MailInvoker

我无法弄清楚没有任何特定的包含语句或在任何自动加载文件中没有提及,类如何使用接口。

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

您可以自动加载课程。有关官方文档,请参阅http://php.net/manual/en/language.oop5.autoload.php

基本上你创建了一个加载类的函数并用spl_autoload_register('autoloader_function_name');注册它 当该类尚未包括在内时,该函数将被执行。

您可以在文件swiftmailer / lib / classes / Swift.php中找到swift自动加载器,为public static function autoload($class)

这里,在stackoverflow上,也有很多例子:Best Way To Autoload Classes In PHP

答案 1 :(得分:0)

Composer是自动加载文件的最佳工具,所有现代框架都使用composer。要自动加载文件夹文件,您应该初始化自动加载系统,然后在文件命名中遵循一些标准。有关composer

的更多信息,请阅读this tutorial
相关问题