Задать вопрос
  • Как записать массив в Excel?

    artzolin
    @artzolin
    php, WordPress разработка сайтов artzolin.ru
    $array = [ '123-345', '999-257', '399-455', '846-313', '555-000', '766-765', '564-564' ];
    
    // создаем excel объект
    $objPHPExcel = new PHPExcel();
    
    // устанавливаем свойства excel документа
    $objPHPExcel->getProperties()->setCreator("Levandovskaya Marina")
    	->setLastModifiedBy("Levandovskaya Marina")
    	->setTitle("Doc Title")
    	->setSubject("Doc Subject")
    	->setDescription("Doc Description")
    	->setKeywords("Doc Keywords")
    	->setCategory("Doc Category");
    $objPHPExcel->setActiveSheetIndex(0);
    
    // добавляем данные из массива в документ
    foreach ( $array as $key => $value ) {
    	$objPHPExcel->setActiveSheetIndex(0)->setCellValue( 'A' . $key, $value );
    }
    
    // сохраняем файл
    $objWriter = PHPExcel_IOFactory::createWriter( $objPHPExcel, 'Excel2007' );
    $objWriter->save( str_replace( '.php', '.xlsx', __FILE__ ) );


    Если нужно будет писать в строку A1, B1, C1 и т.д. используйте массив буквенных ключей

    $letters = array();
    for ( $x = 'A'; $x <= 'ZZ'; $x++ ) {
    	$letters[] =  $x;
    }
    Ответ написан
    1 комментарий