如何将phpexcel与silex框架集成?

时间:2012-07-13 08:01:03

标签: php phpexcel silex

我把phpexcel放到/ silex / vendor /

的index.php:

 <?php
require_once __DIR__.'/../vendor/autoload.php';

$app = new Silex\Application();
$app->register(new Silex\Provider\PHPExel());
$app->get('/hello', function() {
    $objPHPExcel = \PHPExcel::newInstance();
    $objPHPExcel = $objReader->load('123.xls');
    return 'Hello!';
});

$app->run();

Fatal error: Class 'Silex\Provider\PHPExel' not found

3 个答案:

答案 0 :(得分:4)

您可以通过composer安装PHPexcel,请参阅https://github.com/ddeboer/phpexcel。 要通过composer使用PHPExcel,只需在代码中创建一个新实例:

$phpExcel = new \PHPExcel();

答案 1 :(得分:2)

我刚刚编写了一个Silex服务提供程序,用于将PHPExcel与Silex集成:https://github.com/Jaza/ExcelServiceProvider

使用此软件包开始在Silex中使用PHPExcel应该很简单。

答案 2 :(得分:1)

首先,注册您自己的命名空间:

$app['autoloader']->registerNamespace('MyNamespace', __DIR__.'../lib' );

(将PHPExcel文件放在我的示例中的“lib”文件夹中)

2 - 在PHPExcel文件的开头添加命名空间:

   namespace MyNamespace;

(如果PHPExcel位于子文件夹中,请不要忘记将其添加到命名空间路径中!)

3 - 在主文件中使用此命名空间:

use MyNamespace\PHPExcel as PHPExcel;

主文件代码:

<?php
require_once __DIR__.'/../vendor/autoload.php';

use MyNamespace\PHPExcel as PHPExcel;

$app = new Silex\Application();
$app['autoloader']->registerNamespace('MyNamespace', __DIR__.'../lib' );
$app->register(new PHPExcel());