Slide 1

Slide 1 text

ΫϥγοΫγϯϑΥχʔָஂ JOରԠ !IBOBIJSP@B[F

Slide 2

Slide 2 text

ͳ·͑ɿՖҪɹ޺ߦ UXJUUFSɿ!IBOBIJSP@B[F ॴଐɿIJUPNFEJB 4ZNGPOZྺɿ̍೥ େ൒͕9ܥ

Slide 3

Slide 3 text

࣭໰

Slide 4

Slide 4 text

)PXNBOZMBOHVBHFT EPZPVSTFSWJDFTVQQPSU

Slide 5

Slide 5 text

὾೔ຊޠ͚ͩ ὿+BQBOFTFBOE&OHMJTI ᾀ&OHMJTIBOE'SFODI ᾁ0UIFST

Slide 6

Slide 6 text

ɹɹ

Slide 7

Slide 7 text

8FTVQQPSUʜ

Slide 8

Slide 8 text

Έͳ͞ΜͷαʔϏεΛ ඞཁͱ͍ͯ͠Δͷ͸ɺ ೔ຊޠϢʔβʔ͚ͩͰ͠ΐ͏ ͔ʁ

Slide 9

Slide 9 text

ෳ਺ݴޠʹରԠͯ͠ɺ ϏδωεͷػձΛ ޿͛·͠ΐ͏ʂ

Slide 10

Slide 10 text

ࠓճ͸ 4ZNGPOZͷ࿩͠·͢Α

Slide 11

Slide 11 text

TUFQͰෳ਺ݴޠʹରԠ͢Δ ϧʔςΟϯάʹݴޠ MPDBMF Λ௥Ճ͢Δɻ දࣔݴޠΛ൑ఆ͢ΔͨΊʹɺ &WFOU-JTUOFSΛ࡞੒͢Δɻ ຋༁ϑΝΠϧΛ࡞Δɻ UXJHͷදࣔΛෳ਺ݴޠʹରԠ͢Δɻ

Slide 12

Slide 12 text

4UFQϧʔςΟϯάʹݴޠ MPDBMF Λ௥Ճ͢Δɻ !3PVUF \@MPDBMF^ EFGBVMUT\@MPDBMFKB^ SFRVJSFNFOUT\ @MPDBMFKBcFO ^ QVCMJDGVODUJPOMBOHVBHF"DUJPO 3FRVFTUSFRVFTU \ JOGPSNBUJPO݄ͱ݄ͷ৽ண৘ใΛ௥Ճ͠·ͨ͠ɻ SFUVSOUIJTSFOEFS 5PQQBHFJOEFYIUNMUXJH <JOGPSNBUJPOJOGPSNBUJPO> ^ ˏ"QQ#VOEMF5PQQBHF$POUSPMMFS

Slide 13

Slide 13 text

4UFQදࣔݴޠΛ൑ఆ͢ΔͨΊʹ &WFOU-JTUOFS Λ࡞੒͢Δɻ ˏ"QQ#VOEMF&WFOU-JTUFOFS-PDBMF-JTUFOFS http://symfony.com/doc/current/cookbook/session/locale_sticky_session.html ˏDPOpHTFSWJDFTZNM app.locale_listener: class: AppBundle\EventListener\LocaleListener arguments: ['%kernel.default_locale%'] tags: - { name: kernel.event_subscriber }

Slide 14

Slide 14 text

4UFQ຋༁ϑΝΠϧΛ࡞Δɻ ˏ3FTPVSDFTUSBOTMBUJPOTNFTTBHFTFOZNM btn: detail: Detail navi: title: Classic Symfony Orchestra top: Top performance: Performance information profile: About us blog: Blog inquiry: Inquiry ・ ・ ・

Slide 15

Slide 15 text

4UFQ຋༁ϑΝΠϧΛ࡞Δɻ ɾվߦ͸5XJHͷʮOMCSʯϑΟϧλʔΛ࢖༻͢ΔͨΊɺ Ͱදݱ͢Δɻ ɾZNMͰॻ͍ͨLFZΛ΋ͱʹը໘ʹදࣔ͢Δϝοηʔ δΛ૸ࠪ͢ΔͷͰɺʮը໘ͷηΫγϣϯ໊ϝοηʔδ ΩʔʯͷΑ͏ͳ໋໊ʹͯ͠Έͨɻ ɾࠓճ͸ZNMʹ͠·͕ͨ͠ɺ%#ʹ֤ݴޠͷ৘ใΛ࣋ͭ ͷ΋͋Γʁ ɾ຋༁ͭΒ͍ɻɻɻ

Slide 16

Slide 16 text

4UFQUXJHͷදࣔΛෳ਺ݴޠʹରԠ͢Δɻ ˏ3FTPVSDFTWJFXT5PQQBHFJOEFYIUNMUXJH
{{ 'btn.detail'|trans }} ・・・

Slide 17

Slide 17 text

ͦͷଞͷઃఆ ˏDPOpHDPOpHZNMʹσϑΥϧτݴޠͷઃఆ௥Ճ framework: translator: { fallbacks: ["en"] }

Slide 18

Slide 18 text

Slide 19

Slide 19 text

OFYUTUFQ ೔ຊޠɾӳޠͷซهʹରԠ͍ͨ͠ɻ ํ਑ ɾUXJHͷϑΟϧλʔ Λࣗ࡞͢Δɻ ɾUSBOTϑΟϧλʔˠNMBOHϑΟϧλʔʹஔ͖׵͑ɻ

Slide 20

Slide 20 text

OFYUTUFQ ˏDPOpHTFSWJDFTZNM parameters:   subLocale: 'en’ services: twig.mlang_extension: class: AppBundle\Twig\MLangExtension arguments: - '@translator.default' - '%subLocale%' tags: - { name: twig.extension }

Slide 21

Slide 21 text

OFYUTUFQ @AppBundle/Twig/MLangExtension ・・・ public function multiTrans($message, array $arguments = array(), $domain = null, $locale = null, $subLocale = null) { $str = ""; $str .= $this->translator->trans($message, $arguments, $domain, $locale); $str .= "\n"; $str .= $this->translator->trans($message, $arguments, $domain, ! empty($subLocale) ? $subLocale : $this->subLocale); return $str; } ・・・ http://symfony.com/doc/current/cookbook/templating/twig_extension.html

Slide 22

Slide 22 text

͝੩ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ