ð» PHP 㧠Word ãã¡ã€ã«ãäœæããæ¹æ³ïŒããã°ã©ãã³ã°

PHPã¯ãWebéçºã«ãããŠåºã䜿çšãããŠããããã°ã©ãã³ã°èšèªã§ããããã®æ©èœã¯åãªãWebããŒãžã®çæã«ãšã©ãŸããŸãããPHPã¯ãWordãã¡ã€ã«ã®ãããªãªãã£ã¹ããã¥ã¡ã³ãã®äœæããµããŒãããŠããŸãããã®èšäºã§ã¯ãPHPã䜿çšããŠWordãã¡ã€ã«ãäœæããæ¹æ³ã詳ãã説æããŸããå ·äœçã«ã¯ãPHPOfficeã®PHPWordã©ã€ãã©ãªãå©çšããŠãããã°ã©ã ããWordããã¥ã¡ã³ããçæããæé ã解説ããŸãããŸããããã¹ãã®è¿œå ããã©ã³ããã¹ã¿ã€ã«ã®èšå®ãè¡šãç»åã®æ¿å ¥ãªã©ãWordããã¥ã¡ã³ãã®äœæã«å¿ èŠãªåºæ¬çãªæäœãã«ããŒããŸãããã®èšäºãéããŠãPHPã䜿çšããWordãã¡ã€ã«ã®çææ¹æ³ããã¹ã¿ãŒããŸãããã
- PHP ã䜿çšã㊠Word ãã¡ã€ã«ãäœæããæ¹æ³
- ãããã質å
- PHPã§Wordãã¡ã€ã«ãäœæããã«ã¯ã©ã®ãããªã©ã€ãã©ãªããããŸããïŒ
- PHPWordã䜿ã£ãŠWordãã¡ã€ã«ã«ããã¹ããè¿œå ããæ¹æ³ãæããŠãã ããã
- PHPWordã§Wordãã¡ã€ã«ã«è¡šãè¿œå ããæ¹æ³ã¯ïŒ
- PHPã§äœæããWordãã¡ã€ã«ãä¿åããæ¹æ³ã¯ïŒ
PHP ã䜿çšã㊠Word ãã¡ã€ã«ãäœæããæ¹æ³
PHP 㧠Word ãã¡ã€ã«ãäœæããæ¹æ³ã¯ãPHPWord ã©ã€ãã©ãªã䜿çšããã®ãäžè¬çã§ãããã®ã©ã€ãã©ãªã¯ãWord ãã¡ã€ã«ã®äœæãç·šéãä¿åãã§ããŸãããŸããããã¹ãã®æžåŒèšå®ãè¡šãç»åã®æ¿å ¥ãªã©ãWord ã§ã§ããå€ãã®æ©èœããµããŒãããŠããŸãã
PHPWord ã©ã€ãã©ãªã®ã€ã³ã¹ããŒã«
PHPWord ã©ã€ãã©ãªã䜿çšããããã«ã¯ããŸã Composer ã䜿çšããŠã€ã³ã¹ããŒã«ããå¿ èŠããããŸããComposer 㯠PHP ã®äŸåé¢ä¿ç®¡çããŒã«ã§ãã次ã®ã³ãã³ããå®è¡ããŠãPHPWord ãã€ã³ã¹ããŒã«ããŸãã composer require phpoffice/phpword
åºæ¬ç㪠Word ãã¡ã€ã«ã®äœæ
PHPWord ã䜿çšããŠåºæ¬ç㪠Word ãã¡ã€ã«ãäœæããæ¹æ³ã説æããŸãããŸããPHPWord ãªããžã§ã¯ããäœæããã»ã¯ã·ã§ã³ãè¿œå ããŸãããããŠãã»ã¯ã·ã§ã³ã«ããã¹ããè¿œå ãããã¡ã€ã«ãä¿åããŸãã php addSection(); // ããã¹ããè¿œå $section->addText('Hello World!'); // ãã¡ã€ã«ãä¿å $objWriter = PhpOfficePhpWordIOFactory::createWriter($phpWord, 'Word2007'); $objWriter->save('helloWorld.docx'); ?>
ããã¹ãã®æžåŒèšå®
PHPWord ã§ã¯ãããã¹ãã®æžåŒèšå®ãå¯èœã§ããããšãã°ããã©ã³ãã®ãµã€ãºãè²ãå€æŽããããšãã§ããŸãã php addSection(); // æžåŒèšå®ãæå®ããŠããã¹ããè¿œå $section->addText( 'Hello World!', array('name' => 'Arial', 'size' => 20, 'color' => 'red') ); $objWriter = PhpOfficePhpWordIOFactory::createWriter($phpWord, 'Word2007'); $objWriter->save('helloWorldFormatted.docx'); ?>
è¡šã®è¿œå
PHPWord ã§ã¯ãè¡šãè¿œå ã§ããŸãã次ã®äŸã§ã¯ã2x2 ã®è¡šãäœæããã»ã«ã«ããã¹ããè¿œå ããŠããŸãã php addSection(); // è¡šãè¿œå $table = $section->addTable(); // è¡ãšã»ã«ãè¿œå $row = $table->addRow(); $row->addCell()->addText('Cell 1'); $row->addCell()->addText('Cell 2'); $row = $table->addRow(); $row->addCell()->addText('Cell 3'); $row->addCell()->addText('Cell 4'); $objWriter = PhpOfficePhpWordIOFactory::createWriter($phpWord, 'Word2007'); $objWriter->save('table.docx'); ?>
ç»åã®æ¿å ¥
PHPWord ã䜿çšãããšãWord ãã¡ã€ã«ã«ç»åãæ¿å ¥ããããšãã§ããŸãã次ã®äŸã§ã¯ãããŒã«ã«ãã¡ã€ã«ããç»åãæ¿å ¥ããŠããŸãã php addSection(); // ç»åãè¿œå $section->addImage('image.jpg'); $objWriter = PhpOfficePhpWordIOFactory::createWriter($phpWord, 'Word2007'); $objWriter->save('image.docx'); ?>
é ç® | 説æ |
---|---|
PHPWord ã©ã€ãã©ãªã®ã€ã³ã¹ããŒã« | Composer ã䜿çšã㊠PHPWord ã©ã€ãã©ãªãã€ã³ã¹ããŒã«ããŸãã |
åºæ¬ç㪠Word ãã¡ã€ã«ã®äœæ | PHPWord ã䜿çšããŠåºæ¬ç㪠Word ãã¡ã€ã«ãäœæããããã¹ããè¿œå ããŸãã |
ããã¹ãã®æžåŒèšå® | PHPWord ã§ããã¹ãã®ãã©ã³ããµã€ãºãè²ãå€æŽããŸãã |
è¡šã®è¿œå | Word ãã¡ã€ã«ã«è¡šãè¿œå ããã»ã«ã«ããã¹ããå ¥åããŸãã |
ç»åã®æ¿å ¥ | Word ãã¡ã€ã«ã«ããŒã«ã«ãã¡ã€ã«ããç»åãæ¿å ¥ããŸãã |
ãããã®äŸãåèã«ããŠãPHP 㧠Word ãã¡ã€ã«ãäœæããç·šéããããšãã§ããŸããPHPWord ã©ã€ãã©ãªã¯éåžžã«æè»æ§ãé«ããWord ã®ã»ãšãã©ã®æ©èœããµããŒãããŠããŸãã®ã§ãå¿ èŠã«å¿ããŠããã¥ã¡ã³ããã«ã¹ã¿ãã€ãºããŠãã ããã
ãããã質å
PHPã§Wordãã¡ã€ã«ãäœæããã«ã¯ã©ã®ãããªã©ã€ãã©ãªããããŸããïŒ
PHPã§Wordãã¡ã€ã«ãäœæããããã«ã¯ãPHPWordãšããã©ã€ãã©ãªãéåžžã«äŸ¿å©ã§ãããã®ã©ã€ãã©ãªã¯ãWordãã¡ã€ã«ã®äœæãç·šéãä¿åããµããŒãããŠãããããã¹ãã®æžåŒèšå®ãè¡šãç»åã®æ¿å ¥ãªã©ãå€ãã®æ©èœãæäŸããŠããŸãããŸããPHPOfficeãšãããããžã§ã¯ãã®äžéšã§ãããPHPExcelãPHP PowerPointãªã©ãä»ã®Officeãã©ãŒããããäœæããã©ã€ãã©ãªããããŸãã
PHPWordã䜿ã£ãŠWordãã¡ã€ã«ã«ããã¹ããè¿œå ããæ¹æ³ãæããŠãã ããã
PHPWordã䜿ã£ãŠWordãã¡ã€ã«ã«ããã¹ããè¿œå ããã«ã¯ãæåã«PHPWordã®ã€ã³ã¹ã¿ã³ã¹ãäœæããaddSectionã¡ãœããã䜿ã£ãŠã»ã¯ã·ã§ã³ãè¿œå ããŸãããã®åŸãaddTextã¡ãœããã䜿ã£ãŠããã¹ããè¿œå ããŸããäŸãã°ã次ã®ããã«èšè¿°ããŸãã
$phpWord = new PhpOfficePhpWordPhpWord(); $section = $phpWord->addSection(); $section->addText('Hello World!');
PHPWordã§Wordãã¡ã€ã«ã«è¡šãè¿œå ããæ¹æ³ã¯ïŒ
PHPWordã§Wordãã¡ã€ã«ã«è¡šãè¿œå ããã«ã¯ãaddTableã¡ãœããã䜿ã£ãŠè¡šãè¿œå ããaddRowã¡ãœãããšaddCellã¡ãœããã䜿ã£ãŠè¡ãšã»ã«ãè¿œå ããŸããäŸãã°ã次ã®ããã«èšè¿°ããŸãã
$table = $section->addTable(); $table->addRow(); $table->addCell(1750)->addText('ã»ã«1'); $table->addCell(1750)->addText('ã»ã«2');
PHPã§äœæããWordãã¡ã€ã«ãä¿åããæ¹æ³ã¯ïŒ
PHPã§äœæããWordãã¡ã€ã«ãä¿åããã«ã¯ãIOFactoryã¯ã©ã¹ã®saveã¡ãœããã䜿ããŸãããã®ã¡ãœããã¯ããã¡ã€ã«ãã¹ãåŒæ°ã«åããæå®ããããã¹ã«Wordãã¡ã€ã«ãä¿åããŸããäŸãã°ã次ã®ããã«èšè¿°ããŸãã
$objWriter = PhpOfficePhpWordIOFactory::createWriter($phpWord, 'Word2007'); $objWriter->save('helloWorld.docx');
ð» PHP 㧠Word ãã¡ã€ã«ãäœæããæ¹æ³ïŒããã°ã©ãã³ã° ã«é¡äŒŒããä»ã®èšäºãç¥ãããå Žåã¯ãWord ãã¡ã€ã«å€æã»é£æº ã«ããŽãªã«ã¢ã¯ã»ã¹ããŠãã ããã
ã³ã¡ã³ããæ®ã
é¢é£èšäº