2011-11-22 50 views
1

我想在我的Symfony 2控制器中使用COM对象。 COM必须是PHP 5的一部分,所以我猜想没有问题。Symfony 2:处理COM对象

这里是我的代码:

$ObjectFactory = new COM("CrystalReports11.ObjectFactory.1"); 

而且Symfony的返回我这个错误:

Class 'App\InterfaceBundle\Controller\COM' not found 

我在Windows 7中,使用PHP 5.3。在显示phpinfo时,我可以看到启用了COM对象支持。

我在做什么错?控制器中是否包含任何PHP内容以使其工作?

回答

6

您正在名为App\InterfaceBundle\Controller的名称空间中工作,因此PHP正在该名称空间中寻找类COM

你的代码更改为以下将明确地告诉PHP从“全球空间”加载类,而不是当前的命名空间:

$ObjectFactory = new \COM("CrystalReports11.ObjectFactory.1"); 

您可以在PHP手册了解更多关于命名空间:http://www.php.net/manual/en/language.namespaces.php

+0

对,我是PHP5的新手。感谢您的解释! – frinux