如何在symfony2中包含文件(类)

时间:2012-05-30 13:07:00

标签: php symfony

我想使用php导入和查看excel文件,所以我找到了一个库类php-excel-reader

当我们使用php时,我们只使用include("nameoffile.php");

在页面中包含该文件

我不知道如何使用symfony做到这一点。 我应该在哪里导入?怎么样?`

2 个答案:

答案 0 :(得分:2)

这适用于PHPExcel而不是读者,但原理是相同的。无需实际包含文件。它们可以自动加载。

添加到您的autoload.php:

$loader->registerPrefixes(array(
    'Twig_Extensions_' => $ws.'Symfony/vendor/twig-extensions/lib',
    'Twig_'            => $ws.'Symfony/vendor/twig/lib',
    'Zend_'            => $ws.'ZendFramework-1.11.11/library',
    'PHPExcel'         => $ws.'PHPExcel/Classes' // Change to support the reader
));

之后您可以执行以下操作:

$reader = new \Spreadsheet_Reader();

请注意,处理非命名空间库需要使用前导斜杠。

我使用服务抽象了一些东西:

/* ==================================================
 * Wrap interface to the excel spreasheet processing
 */
namespace Zayso\CoreBundle\Component\Format;

class Excel
{
    public function newSpreadSheet()
    {
        return new \PHPExcel();
    }
    public function newWriter($ss)
    {
        return \PHPExcel_IOFactory::createWriter($ss, 'Excel5');
    }
    public function load($file)
    {
        return \PHPExcel_IOFactory::load($file);
    }
}

答案 1 :(得分:0)

您可以创建需要文件的服务。 您在官方文档中有an example