Страница 1 из 1

phpExcel - Yii обертка

Добавлено: 2012.11.16, 16:54
Ghost_nsk
народ у кого-нибудь есть нормальная обертка Yii вокруг phpExcel? :)

Re: phpExcel - Yii обертка

Добавлено: 2012.11.16, 20:12
ElisDN
Эх... Я без обёртки извращался.

Re: phpExcel - Yii обертка

Добавлено: 2013.04.23, 11:12
melyfaro

Re: phpExcel - Yii обертка

Добавлено: 2013.04.23, 11:43
S1lent
Что значит не помогает?
Всё же просто :

Код: Выделить всё

spl_autoload_unregister(array('YiiBase','autoload'));
Yii::import("ext.phpexcel.Classes.PHPExcel", true);
$objPHPExcel = new PHPExcel();
spl_autoload_register(array('YiiBase','autoload'));
А дальше делайте с $objPHPExcel всё что хотите.

Re: phpExcel - Yii обертка

Добавлено: 2013.04.28, 20:53
melyfaro
ДА я забыл отписаться :) Косяк в другом был
в xlsx там на серваке нужен phpzip

Re: phpExcel - Yii обертка

Добавлено: 2014.09.16, 15:18
yii-user
В экшн контроллера прописал:
melyfaro писал(а):spl_autoload_unregister(array('YiiBase','autoload'));
Yii::import("ext.phpexcel.Classes.PHPExcel", true);
$objPHPExcel = new PHPExcel();
spl_autoload_register(array('YiiBase','autoload'));
Добавляются данные, затем:

Код: Выделить всё

header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="myexample.xlsx"');
header('Cache-Control: max-age=0');

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('php://output');
exit;
Товарищи, подскажите, пожалуйста - на localhost работает. На сервере спотыкается на

Код: Выделить всё

$objWriter->save('php://output');
Выдает "веб-страница по адресу недоступна или перемещена".
Если перед этим поставить

Код: Выделить всё

echo '123';exit;
то пишет в файл 123 и сохраняет в текстовом формате с расширением xlsx.

Re: phpExcel - Yii обертка

Добавлено: 2014.09.17, 09:26
yiijeka
C header что-то. Погуглите по запросу phpexcel php //output not working

https://phpexcel.codeplex.com/discussions/399119
....

Re: phpExcel - Yii обертка

Добавлено: 2015.09.02, 07:30
des1roer

Код: Выделить всё

    public function actionExcel()
    {
        spl_autoload_unregister(array('YiiBase','autoload'));
        Yii::import("ext.phpexcel.Classes.PHPExcel", true);
        $objPHPExcel = new PHPExcel();
        spl_autoload_register(array('YiiBase','autoload'));

/*        $objPHPExcel = new PHPExcel();

        $objPHPExcel->setActiveSheetIndex(0)
                ->setCellValue('A1', 'Hello')
                ->setCellValue('B2', 'world!')
                ->setCellValue('C1', 'Hello')
                ->setCellValue('D2', 'world!');

        $objPHPExcel->setActiveSheetIndex(0)
                ->setCellValue('A4', 'Miscellaneous glyphs')
                ->setCellValue('A5', 'eaeuaeioueiuyaouc');

        $objPHPExcel->getActiveSheet()->setTitle('Simple');

        $objPHPExcel->setActiveSheetIndex(0);

        ob_end_clean();
        ob_start();

        header('Content-Type: application/vnd.ms-excel');
        header('Content-Disposition: attachment;filename="test.xls"');
        header('Cache-Control: max-age=0');
        $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
        $objWriter->save('php://output');*/
    } 
получаю
Fatal error: Class 'CException' not found in D:\open\OpenServer\domains\localhost\yii\framework\YiiBase.php on line 323

Fatal error: Class 'CException' not found in D:\open\OpenServer\domains\localhost\yii\framework\web\CThemeManager.php on line 110