桜ヶ丘日記

技術メモとかとか

xamppでPhpSpreadsheetを試してみる

xamppのphpでPhpSpreadsheetを試してみた。
PhpSpreadsheetはComposerを使ってインストールすることになる。

環境

C:\Users\sakuragaoka>ver

Microsoft Windows [Version 6.1.7601]

C:\Users\sakuragaoka>php -v
PHP 7.1.9 (cli) (built: Aug 30 2017 18:37:35) ( ZTS MSVC14 (Visual C++ 2015) x86)
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies

Composerを入れる

手順

https://getcomposer.org/download/
からダウンロードしインストーラで入れる

起動

C:\Users\sakuragaoka>composer
   ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/
Composer version 1.5.2 2017-09-11 16:59:25

Usage:
  command [options] [arguments]

(略)

C:\Users\sakuragaoka>composer.bat --version
Composer version 1.5.2 2017-09-11 16:59:25

Composerを使ってPhpSpreadsheetを入れる

手順

C:\Users\sakuragaoka>composer require phpoffice/phpspreadsheet:dev-develop
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 2 installs, 0 updates, 0 removals
  - Installing psr/simple-cache (1.0.0): Downloading (100%)
  - Installing phpoffice/phpspreadsheet (dev-develop 1cec980): Cloning 1cec980167 from cache
phpoffice/phpspreadsheet suggests installing mpdf/mpdf (Option for rendering PDF with PDF Writer)
phpoffice/phpspreadsheet suggests installing dompdf/dompdf (Option for rendering PDF with PDF Writer)
phpoffice/phpspreadsheet suggests installing tecnick.com/tcpdf (Option for rendering PDF with PDF Writer)
phpoffice/phpspreadsheet suggests installing jpgraph/jpgraph (Option for rendering charts, or including charts with PDF or HTML Writers)
Writing lock file
Generating autoload files

C:\Users\sakuragaoka>

動作確認

あらかじめ
C:\home\work\phpspreadsheet\hello.php

https://phpspreadsheet.readthedocs.io/en/develop/#installation
にあるHello Worldサンプルを作成しておく

C:\Users\sakuragaoka>cd C:\home\work\phpspreadsheet
C:\home\work\phpspreadsheet>type hello.php
<?php

require '/Users/sakuragaoka/vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

$spreadsheet = new Spreadsheet();
$sheet = $spreadsheet->getActiveSheet();
$sheet->setCellValue('A1', 'Hello World !');

$writer = new Xlsx($spreadsheet);
$writer->save('hello world.xlsx');

C:\home\work\phpspreadsheet>php hello.php

C:\home\work\phpspreadsheet>

C:\home\work\phpspreadsheet
の中にhello world.xlsxが作成される