Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
LaraCSVで手軽にCSVを出力する/Easily generate CSV by Lar...
Search
kkznch
May 16, 2019
Technology
0
1.7k
LaraCSVで手軽にCSVを出力する/Easily generate CSV by LaraCSV
Laravel Meetup宮崎
登壇枠で使用
参考URL
https://re-build.connpass.com/event/129466/
kkznch
May 16, 2019
Tweet
Share
More Decks by kkznch
See All by kkznch
黒い画面へようこそ/Hello, black screen
kkznch
0
410
VueRouterとNuxtのルーティング/VueRouter and Nuxt Routing
kkznch
0
370
Vuexで何を管理する方が良い?/What is better to store in Vuex?
kkznch
1
770
Firestoreのルール設定 割と何でも出来てビビる/Firestore rule setting
kkznch
1
820
自社サービス チャット機能にFirebaseが導入されてた/Firebase was introduced to the chat function of our service
kkznch
0
1.2k
SPA開発未経験者によるNuxt.jsを使った自社サービス開発 / Development of own service using Nuxt.js by inexperienced SPA development
kkznch
3
3.3k
Laravel Telescopeが便利そうな気がする/Laravel Telescope seems to be convenience
kkznch
1
1.1k
Laravel Novaはなんだかいい感じらしい/Laravel Nova seems to be nice
kkznch
0
660
Laravel5.5的 継続的インテグレーション / Laravel 5.5 Continuous Integration
kkznch
3
3.6k
Other Decks in Technology
See All in Technology
おやつは300円まで!の最適化を模索してみた
techtekt
PRO
0
270
LLM翻訳ツールの開発と海外のお客様対応等への社内導入事例
gree_tech
PRO
0
540
allow_retry と Arel.sql / allow_retry and Arel.sql
euglena1215
1
150
ZOZOマッチのアーキテクチャと技術構成
zozotech
PRO
3
1.3k
La gouvernance territoriale des données grâce à la plateforme Terreze
bluehats
0
110
ヘブンバーンズレッドにおける、世界観を活かしたミニゲーム企画の作り方
gree_tech
PRO
0
540
Vault meets Kubernetes
mochizuki875
0
270
研究開発と製品開発、両利きのロボティクス
youtalk
1
470
進捗
ydah
2
230
落ちる 落ちるよ サーバーは落ちる
suehiromasatoshi
0
140
AI時代に非連続な成長を実現するエンジニアリング戦略
sansantech
PRO
3
1.1k
Obsidian応用活用術
onikun94
1
390
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
RailsConf 2023
tenderlove
30
1.2k
Music & Morning Musume
bryan
46
6.8k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
How STYLIGHT went responsive
nonsquared
100
5.8k
Transcript
LaraCSVͰ खܰʹCSVΛग़ྗ͢Δ גࣜձࣾRe:Build Յ ါىʢ@kkznchʣ 20195݄16ʢʣ Laravel Meetup Miyazaki
͚͚ͣΜ @kkznch Յ ါى 1990ͷԭೄੜ·Ε ిྗձࣾͷITΠϯϑϥɺηΩϡϦςΟ ↓ גࣜձࣾRe:BuildͰWebΤϯδχΞ
ձࣾհ • גࣜձࣾRe:Buildʢ201711݄ʹઃཱʣ • ݱࡏͷࣾһ໊̑ • ԭೄΛڌͱ͠ɺجຊతʹLaravelVue.jsΛ ͬͯडୗɾࣗࣾαʔϏε։ൃΛ͍ͯ͠Δ • ϦϞʔτϫʔΫɺࣗ༝ͳಇ͖ํΛਪ͍ͯ͠Δ
LaraCSV
None
͍ํ
ϥΠϒϥϦΛՃ͢Δ # terminal͔ΒԼهͷίϚϯυΛ࣮ߦ͢Δ $ composer require usmanhalalit/laracsv:^2.0
CSVͷϏϧυ // ΠϯελϯεΛੜ͢Δ $csvExporter = new \Laracsv\Export(); // ୈҰҾʹCollectionΛɺ //
ୈೋҾʹCSVͰग़ྗ͍ͨ͠ϞσϧͷΧϥϜ໊Λೖྗ͢Δ $csvExporter->build(Users::get(), ['email', 'name']);
CSVͷμϯϩʔυ // μϯϩʔυ͢Δ $csvExporter->download(); email,name
[email protected]
,"Ԭ෦ ྙଠ"
[email protected]
,"໊ ·ΏΓ"
[email protected]
,"ڮా
ࢸ" // ϑΝΠϧ໊Λࢦఆͯ͠μϯϩʔυ͢Δ $csvExporter->download('users.csv');
ྑ͍ͱࢥͬͨͱ͜Ζ
ϦϨʔγϣϯऔಘ͢Δ // Ϟσϧʹఆٛ͞Ε͍ͯΔϦϨʔγϣϯΛࢦఆ͢Δ͚ͩ $csvExporter->build(Users::get(), ['email', 'name', ‘department.name’]);
ͷՃɾมߋ͕Ͱ͖Δ $csvExporter->beforeEach(function($user) { // طଘͷΛ্ॻ͖Ͱ͖Δ $user->email = '
[email protected]
'; // ଘࡏ͠ͳ͍ΛՃͰ͖Δ
$user->note = $user->name . 'ϝϞͰ͢'; }); $csvExporter->build(User::get(), [‘email', 'name', ‘note'])->download(); email,name,note
[email protected]
,"Ԭ෦ ྙଠ","Ԭ෦ ྙଠϝϞͰ͢"
[email protected]
,"໊ ·ΏΓ","໊ ·ΏΓϝϞͰ͢"
࣮Ͱͷ͍ॴʁ
͍ॴ • τϥϯβΫγϣϯσʔλͷCSVग़ྗ • ܭࢉ݁ՌΛ֨ೲͨ͠࿈ྻͷCSVग़ྗ ‣ ྻΛCollectionܕʹมͯ͢͠ͱಈ͘
CSVϥΠϒϥϦͷൺֱ
CSVϥΠϒϥϦ ͍Ζ͍Ζ͋Δ
Packalyst ʢCSVϥΠϒϥϦ DL߱ॱʣ
৮ΓͭͭΛൺֱͯ͠Έͨ
ൺֱର • laracsv • excel • laravel-formatter • fast-excel
࣮ݧ • string(255)ܕΧϥϜΛ10ݸ࣋ͭςʔϒϧ • Ϩίʔυ5120݅ • ֤ϥΠϒϥϦͰCSVϑΝΠϧΛग़ྗ͢Δ·Ͱ ͷ࣌ؒΛଌఆ͢Δ
݁Ռ ࣌ؒʢඵʣ ίϝϯτ MBSBDTW ͍͕͍উखΑ͍ FYDFM ग़ྗ͢ΔͨΊʹ&YQPSU༻ΫϥεΛ ༻ҙ͢Δඞཁ͕͋ͬͯ໘͍͘͞
MBSBWFMGPSNBUUFS ϑΥʔϚοτͷม͚ͩߦΘΕΔɻ ϑΝΠϧͷॻ͖ग़͠ཁࣗ࡞ GBTUFYDFM ଌఆϛεͬͨͷ͔ͳʜ ϫϯϥΠφʔͰ$47രग़ྗ
·ͱΊ
·ͱΊ • LaraCSVͰखܰʹCSVͷग़ྗ͕Ͱ͖Δ ‣ ग़ྗ͢ΔΧϥϜͷࢦఆ͕༰қ ‣ ϦϨʔγϣϯઌͷࢦఆͰ͖Δ • ͞Λٻ͢Δ͋ͳͨfast-excelΛͲ͏ͧ