Laravel Meetup宮崎 登壇枠で使用
参考URL https://re-build.connpass.com/event/129466/
LaraCSVͰखܰʹCSVΛग़ྗ͢ΔגࣜձࣾRe:BuildՅ ါىʢ@kkznchʣ20195݄16ʢʣLaravel Meetup Miyazaki
View Slide
͚͚ͣΜ @kkznchՅ ါى1990ͷԭೄੜ·ΕిྗձࣾͷITΠϯϑϥɺηΩϡϦςΟ↓גࣜձࣾRe:BuildͰWebΤϯδχΞ
ձࣾհ• גࣜձࣾRe:Buildʢ201711݄ʹઃཱʣ• ݱࡏͷࣾһ໊̑• ԭೄΛڌͱ͠ɺجຊతʹLaravelVue.jsΛͬͯडୗɾࣗࣾαʔϏε։ൃΛ͍ͯ͠Δ• ϦϞʔτϫʔΫɺࣗ༝ͳಇ͖ํΛਪ͍ͯ͠Δ
LaraCSV
͍ํ
ϥΠϒϥϦΛՃ͢Δ# 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ΛͲ͏ͧ