繁体   English   中英

像Java中的Autoloader一样的PHP

[英]PHP like Autoloader in Java

Java解释器是否支持Autoloader-Function或扩展他的“寻找类”功能的可能性?

在PHP中有一个名为spl_autoload_register的函数(详情请参见http://www.php.net/manual/en/function.spl-autoload-register.php ),它强制解释器执行我自己的回调函数。寻找失踪的课程。 在我的回调函数中,我可以包含具有预期类的文件。

背景的想法是我想在软件层之间动态切换。

例如:
如果第2层中存在类x_L2,则应忽略基础层1中的类x_L1。 实际上我用一般的镜像类x解决了这个问题,它必须从最高可用层中的类继承。 但是当你必须维护数百个类时,这种方式很容易出错。

提前致谢。

这可以通过使用不同的类加载器(如URLClassLoader 然后,您将使用loadClass从此类加载器中获取类。 是的,它还支持本地和远程资源。

您可以编写自己的ClassLoader子类,并使用其loadClass()而不是默认的子类。

看来你正在尝试编写自定义类加载器

IBM提供了很好的文档来帮助您。

类由它们的包标识,因为类可以通过PHP中的命名空间来标识。 要使用特定类,只需使用限定名称即可。

public mypackage.mysubpackage.Myclass myInstanceofMyClass;

或者您只能导入所需的类:

import mypackage.mysubpackage.Myclass;

您不能在同一个包中拥有与另一个类同名的类。 这是一种类型的重复定义。 我不知道包含的回调函数。

暂无
暂无

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

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