需要_once()和自动加载程序-如何加载平面php?

需要_once()和自动加载程序-如何加载平面php?,php,symfony,Php,Symfony,我有一个文件(用于PHP的xmlrpc库),我想将其用于Symfony2类(因此在Symfony2项目中) 我不能使用自动加载器,因为 它能够[自动加载程序]从 执行下列公约之一: 1) The technical interoperability standards for PHP 5.3 namespaces and class names; 2) The PEAR naming convention for classes. 如果您的类和用于项目的第三方库 按照这些标准,Symf

我有一个文件(用于PHP的xmlrpc库),我想将其用于Symfony2类(因此在Symfony2项目中)

我不能使用自动加载器,因为

它能够[自动加载程序]从 执行下列公约之一:

1) The technical interoperability standards for PHP 5.3 namespaces and 
   class names;
2) The PEAR naming convention for classes.
如果您的类和用于项目的第三方库 按照这些标准,Symfony2自动加载器是唯一的自动加载器 你永远都需要

我将要使用的类不满足这些要求之一


因此,如果我无法自动加载该文件,因为不可能(据我所知,但我可能会出错)使用
require\u一次
(或者简单地使用
require
)和
名称空间
,这个问题的解决方案是什么?

假设您有一个名为
xmlrpc.lib.php
的文件,其内容如下:


我问了一个类似的问题,得到了很好的建议。请参阅@CarlosGranados我的文件包含多个类。。。这个解决方案适合我的具体情况吗?此外,我用MapClassLoader注册我的“旧”php文件:然后我必须像注册到autoloader一样使用它(所以使用
src/to/my/file/folder/path
)?我认为它应该可以工作。composer所做的是注册一个类的映射以及它们“所在”的位置。然后,只需为这些类添加“use”语句。如果他们不使用名称空间,只需添加UseClassname。如果他们使用名称空间添加使用FQN,这是一个很好的方法。我们使用了另一个比你更糟糕的“技巧”:创建一个使用
require\u once()
的“wrap”类,并将该文件包含在所有这些类中。然后我们在那个文件上使用MapClassLoader,它可以工作。。。虽然不如您的解决方案好,但它确实有效;-)