PHP8Λͬ͘͟Γղઆͯ͠ΈΔ2021/1/22 WebφΠτٶ࡚ vol.12େ௩ਅݴ
View Slide
ࣗݾհ
ࣗݾհ-BSBWFM7VFKT'JSFCBTFαφେ͖ͳ8FCΤϯδχΞ
ձࣾհ߹ಉձࣾϊϚυϦۀظϝϯόʔ໊8FCαʔϏε։ൃ&$αΠτ։ൃ
202011݄26Կͷʁ
ͷੜ
Ͱͳ͘
PHP8ͷੜʢϦϦʔεʣ
ओͳมߋ• JITίϯύΠϧʹΑΔੑೳվળ• Nullsafeԋࢉࢠʢψϧ҆શΦϖϨʔλʣ• Unionܕ• Matchࣜ• ଞʹଟ
ͦͷલʹΞϯέʔτ
ͲͷόʔδϣϯΛͬͯΔʁ1. PHP 5.x2. PHP 7.0ʙ7.23. PHP 7.3ʙ7.44. PHP 8.0
ҎԼ7.47.37.27.0-7.15.65.5ҎԼIUUQTXUFDITDPNUFDIOPMPHJFTEFUBJMTQMQIQόʔδϣϯ͝ͱͷ༻
PHP8ͷ৽ػೳ
JITίϯύΠϧ• JITʢJust-in-Time Compilerʣ˞࣮ߦ࣌ίϯύΠϥ• ίʔυΛϝϞϦʔʹΩϟογϡ͢ΔOPCacheͱซ༻• ωΠςΟϒίʔυΛϝϞϦʔʹΩϟογϡ͢Δ͜ͱͰϓϩάϥϜ࣮ߦΛߴԽ• ΞϧΰϦζϜܥॲཧͰ2~3ഒఔ࣮ߦ্͕ͨ͠ɺWordPressͳͲͷWebΞϓϦέʔγϣϯͰ%ఔ্͔͠͠ͳ͍
NullsafeԋࢉࢠDPVOUSZOVMMJG TFTTJPOOVMM\VTFSTFTTJPOVTFSJG VTFSOVMM\BEESFTTVTFSHFU"EESFTT JG BEESFTTOVMM\DPVOUSZBEESFTTDPVOUSZ^^^DPVOUSZTFTTJPO VTFS HFU"EESFTT DPVOUSZ1)11)1ifจʹΑΔnullνΣοΫ͕ෆཁʹͳΔ
Unionܕ!QBSBNqPBUcJOUOVNCFSQVCMJDGVODUJPOTBNQMF OVNCFS\FDIPOVNCFS^UIJTTBNQMF UFHFIPHF࣮ߦՄೳQVCMJDGVODUJPOTBNQMF qPBUcJOUOVNCFS\FDIPOVNCFS^UIJTTBNQMF UFHFIPHF࣮ߦΤϥʔ1)11)1࣮ߦ࣌ʹUnionܕͷܕνΣοΫ͕Ͱ͖Δ1)1ͰΞϊςʔγϣϯʹΑΔิ
MatchࣜTXJUDI \DBTFSFTVMU0IOPCSFBLDBTFSFTVMU5IJTJTXIBU*FYQFDUFECSFBL^FDIPSFTVMU0IOPFDIPNBUDI \0IOP 5IJTJTXIBU*FYQFDUFE ^5IJTJTXIBU*FYQFDUFE1)11)1ݫີͳൺֱɺbreakจ͕ෆཁ
·ͱΊ• JITίϯύΠϧ͕ಋೖ͞Ε͕ͨɺ࣮ӡ༻ͷWebΞϓϦͷੑೳ্͋·ΓظͰ͖ͳ͍• MatchࣜNullsafeԋࢉࢠΛ͏͜ͱͰεϦϜͳίʔυΛॻ͚Δ• Unionܕ͕Ճ͞ΕɺܕγεςϜ͕ΑΓڧݻʹͳͬͨ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ