Slide 1

Slide 1 text

Phalconͷεεϝ @PHP BLT #5 גࣜձࣾϢʔβʔϩʔΧϧ
 CTO ࡾ্ढ़ี @shun0102

Slide 2

Slide 2 text

ϑϨʔϜϫʔΫʹٻΊΔ΋ͷ ɾ໨త
 ɹ- େྔͷτϥϑΟοΫΛ͞͹͘APIαʔόʔ
 ɾཉ͍͠ػೳ
 ɹ- DIίϯςφ
 ɹ- ϧʔλʔ ɹ- MVCʢORM͸ͳͯ͘΋OKʣ
 ɹ- ੑೳʢ଎͚Ε͹଎͍΄Ͳྑ͍ʣ

Slide 3

Slide 3 text

ಠࣗϑϨʔϜϫʔΫ͸ʁ ɾબ୒ࢶͱͯ͠͸શવ͋Γ ɾυΩϡϝϯτɺϝϯςφϯεੑɺॻ͖΍͢͞ͳͲ ɾଐਓੑ

Slide 4

Slide 4 text

ग़యɿhttps://github.com/kenjis/php-framework-benchmark

Slide 5

Slide 5 text

ࣗ෼ͰͱͬͨIFMMPXPSMEϕϯνϚʔΫ ؀ڥ ɾGCP vCPU 2, memory 7.5GB 
 ɾphp 7.0.8 0 1000 2000 3000 4000 raw phalcon 2.1 slim 3.4 lumen 5.4

Slide 6

Slide 6 text

ͦͷଞؾʹͳΔϑϨʔϜϫʔΫ ɾphalconͰ΋࢖ΘΕ͍ͯΔZephirͰ࡞ΒΕͨIce ɾAuraͳͲͷίϯϙωϯτΛ࢖ͬͨಠࣗϑϨʔϜϫʔΫ͸ʁ

Slide 7

Slide 7 text

1IBMDPOͷ঺հ ɾCݴޠͰ࡞ΒΕͨPHPΤΫεςϯγϣϯ
 ɾ1.3ܥɿݹ͍҆ఆ൛ ɾ2.0ܥɿZephirͰ࡞Γ௚͞Εͨ৽͍҆͠ఆ൛ ɾ2.1ܥɿ2.1.0 rc1·ͰϦϦʔε
 PHP 7.0αϙʔτ
 LTS(3೥)ʹͳΔ༧ఆ

Slide 8

Slide 8 text

1IBMDPO։ൃऀπʔϧ $ phalcon project phalcon_hello ɾϓϩδΣΫτͷ਽ܗͷ࡞੒ ɾར༻ՄೳͳίϚϯυ $ phalcon commands Available commands: commands (alias of: list, enumerate) controller (alias of: create-controller) module (alias of: create-module) model (alias of: create-model) all-models (alias of: create-all-models) project (alias of: create-project) scaffold (alias of: create-scaffold) migration (alias of: create-migration) webtools (alias of: create-webtools)

Slide 9

Slide 9 text

$ tree . ᵓ── app │ ᵓ── cache │ ᵓ── config │ │ ᵓ── config.php │ │ ᵓ── loader.php │ │ └── services.php │ ᵓ── controllers │ │ ᵓ── ControllerBase.php │ │ └── IndexController.php │ ᵓ── migrations │ ᵓ── models │ └── views │ ᵓ── index │ │ └── index.volt │ ᵓ── index.volt │ └── layouts ᵓ── index.html └── public ᵓ── css ᵓ── files ᵓ── img ᵓ── index.php ᵓ── js └── temp σΟϨΫτϦߏ଄͸ࣗ༝͕ͩɺ਽ܗ͸͋Δ

Slide 10

Slide 10 text

ґଘੑͷ஫ೖ %* setShared('session', function () { $session = new SessionFiles(); $session->start(); return $session; }); $session = $di->get('session');

Slide 11

Slide 11 text

ϧʔςΟϯά 3PVUJOH

Slide 12

Slide 12 text

ΞϊςʔγϣϯʹΑΔϧʔλʔ

Slide 13

Slide 13 text

ΞϊςʔγϣϯʹΑΔϧʔλʔ

Slide 14

Slide 14 text

.7$ $ tree . ᵓ── app │ ᵓ── controllers │ │ ᵓ── ControllerBase.php │ │ └── IndexController.php │ ᵓ── models │ └── views │ ᵓ── index │ │ └── index.volt │ ᵓ── index.volt │ └── layouts

Slide 15

Slide 15 text

.7$ ɾView: VoltςϯϓϨʔτΤϯδϯʢ࢖Θͳͯ͘΋ྑ͍ʣ ɾModel: ಠࣗͷPHQL

Slide 16

Slide 16 text

·ͱΊ ɾߴ଎ͳPHP framework PhalconΛ঺հ ɾࣗ෼ͷϕϯνϚʔΫͰ͸ੜPHPͷ1/2͘Β͍ɺ
 ɹଞΑΓ΋̎ഒҎ্͸଎͍
 ɾػೳͱͯ͠DI, ϧʔςΟϯά, MVCͷ঺հ