Slide 1

Slide 1 text

ެࣜ%PD΍!SBOB@LVBMV͞ΜͨͪͷϒϩάΛഈݟ͠ͳ͕Β 1)1৽ػೳΛࢼͯ͠ΈΔ ೥݄೔1)1ษڧձJO޿ౡ7PM גࣜձࣾ(P24ZTUFNڮޱ྇

Slide 2

Slide 2 text

1)1ϦϦʔε㊗ ͍ͭʹ1)1͕ϦϦʔε͞Ε·ͨ͠👏👏👏 օ͞Μɺ৽ػೳͳͲΩϟονΞοϓͰ͖ͯ·͔͢ʂʁ ࣗ෼͸શવͰ͢ɺɺɺ 1)1͸೔ຊਓͷ͖ͪ͞͞Μ͕ϦϦʔεϚωʔδϟʔʢϧʔΩʔʣͱͯ͠બ͹Εͨ͜ͱ ΋࿩୊ʹͳΓ·ͨ͠Ͷ

Slide 3

Slide 3 text

1)1ϦϦʔε㊗ ࠓ೔͸1)1ͷػೳΛ͍͔ͭ͘ϐοΫΞοϓͯ͠ɺ࣮ࡍʹࢼͯ͠ΈΑ͏ͱࢥ͍·͢ʂʂ 1)1ͷ%PDLFS؀ڥΛ༻ҙ࣮ͯ͠ࡍʹࢼͯ͠Έ·͠ΐ͏ ҎԼͷϦϙδτϦʹࠓ೔࢖͏ίʔυΛஔ͍͍ͯ·͢ (JU)VCɿIUUQTHJUIVCDPN5IF(,SIQIQQIQTUVEZJOIJSPTIJNB

Slide 4

Slide 4 text

1)1৽ػೳ ެࣜυΩϡϝϯτɿIUUQTXXXQIQOFUNBOVBMKBNJHSBUJPOOFXGFBUVSFTQIQ ৽ػೳ 1)1ίΞ  ɾϓϩύςΟϑοΫɾඇରশՄࢹੑϓϩύςΟɾϨΠδʔΦϒδΣΫτɾΞτϦϏϡʔτɾ1045Ҏ֎ͷ )551ϦΫΤετͰͷ3'$ Ϛϧνύʔτ ϦΫΤετͷղੳɾׅހͳ͠ͰͷOFXࣜͷνΣʔϯɾ8FBL3FGFSFODFͷ σόοά৘ใͷվળɾ$MPTVSFͷσόοά৘ใͷվળɾҟͳΔ໊લۭؒϒϩοΫͰಉҰͷγϯϘϧΛఆٛ ͜ͷ΄͔ʹ΋৽͘͠௥Ճ͞ΕͨΫϥε΍ؔ਺ɺάϩʔόϧఆ਺ͳͲ਺ଟ͘ͷ΋ͷ͕௥Ճ͞Ε͍ͯ·͢ɻ ԼҐޓ׵ੑͷͳ͍มߋ఺ʹ͋ΔɺFYJU ͷಈ࡞ͷมߋɻ 1)1YͰਪ঑͞Εͳ͘ͳΔػೳɺ҉໧తͳOVMMBCMFύϥϝʔλʔͳͲؾʹͳΔ΋ͷ͕ͨ͘͞Μ͋Γ·͢ɻ

Slide 5

Slide 5 text

ΞδΣϯμ ࠓ೔͸ݸਓతʹؾʹͳ͍ͬͯΔҎԼΛऔΓѻ͍·͢ɻ ɾϓϩύςΟϑοΫ ɾඇରশՄࢹੑϓϩύςΟ ɾׅހͳ͠ͰͷOFXࣜͷνΣʔϯ ɾ%BUFUJNF%BUFUJNF*NNVUBCMFDSFBUF'SPN5JNFTUBNQ

Slide 6

Slide 6 text

1SPQFSUZBDDFTTIPPLT phoneNumber = $value; } get => 'ి࿩൪߸͸' . $this->phoneNumber . 'Ͱ͢'; } } $hooks = new PropertyAccessHooks(); $hooks->phoneNumber = '09012341234'; echo $hooks->phoneNumber; // ి࿩൪߸͸09012341234Ͱ͢ !SBOB@LVBMV͞Μͷ2JJUBͷهࣄΛࢀ ߟʹͯ͠ΈͯΈ·͢ɻ IUUQTRJJUBDPNSBOB@LVBMV JUFNTEBDC ϓϩύςΟʹTFUUFSHFUUFSΛ௚઀ه ड़Ͱ͖Δߏจ /JLJUB͞ΜͷϓϩύςΟΞΫηαͷ 3'$͔Βདྷ͍ͯͯɺ$ͱ4XJGU͔Βେ ͖ͳӨڹΛड͚ͨͦ͏Ͱ͢ɻ ͜Ε·ͰHFU'PPTFU'PPɺΛهड़͠ ͖ͯͨ෦෼Λॻ͘ඞཁ͕ͳ͘ͳΓ· ͢ɻ

Slide 7

Slide 7 text

"TZNNFUSJD7JTJCJMJUZW companyName; // GoQSystem $asymmetricVisibility->companyName = 'GoQSystem Inc.'; // Fatal error !SBOB@LVBMV͞Μͷ2JJUBͷهࣄΛࢀ ߟʹͯ͠ΈͯΈ·͢ɻ IUUQTRJJUBDPNSBOB@LVBMV JUFNTDFFGFCGB ಡΊΔ͚Ͳॻ͚ͳ͍ϓϩύςΟΛએ ݴͰ͖ΔΑ͏ʹͳͬͨʢSFBEPOMZͱ ͸ҧ͏ʣ 4XJGU͔Β࠾༻͍ͯ͠Δͦ͏Ͱ͢ɻ ͜Ε͔Β͸͜ͷॻ͖ํ͕ओྲྀʹͳͬ ͍͔ͯ͘΋͠Εͳ͍Ͱ͢Ͷɻ

Slide 8

Slide 8 text

OFX.Z$MBTT NFUIPE XJUIPVUQBSFOUIFTFT exec(); // PHP8.4 new NewWithoutParentheses()->exec(); !SBOB@LVBMV͞Μͷ2JJUBͷهࣄΛࢀ ߟʹͯ͠ΈͯΈ·͢ɻ IUUQTRJJUBDPNSBOB@LVBMV JUFNTGDFEBGBC OFX$MBTT EP Λ͔͚ΔΑ͏ʹͳ Γ·ͨ͠ ͜Ε·Ͱ͸͜͏ॻ͍ͯ͠·͏ͱɺ OFX $MBTT EP ͱղऍ͞Εͯ͠ ·͏ͨΊΤϥʔʹͳ͍ͬͯ·ͨ͠ +BWBɾ$ɾ5ZQF4DSJQUͳͲׅހ͕͍ Βͳ͍ଞͷݴޠʹ߹Θͤͨଆ໘΋͋ ΔΑ͏Ͱ͢

Slide 9

Slide 9 text

%BUFUJNF%BUFUJNF*NNVUBCMFDSFBUF'SPN5JNFTUBNQ createFromTimestampOld(time())->format('Y-m-d H:i:s') . PHP_EOL; echo $create->createFromTimestampNew(time())->format('Y-m-d H:i:s') . PHP_EOL; NBDPDDJ͞ΜͷϒϩάͷهࣄΛࢀߟ ʹͯ͠ΈͯΈ·͢ɻ λΠϜελϯϓ͔Β%BUF5JNF͕࡞੒ Ͱ͖ΔΑ͏ʹͳΓ·ͨ͠ ͜Ε·Ͱ͸DSFBUF'SPN'PSNBUΛར ༻͢Δඞཁ͕͋Γ·͕ͨ͠ɺඞཁͳ ͘ͳΓ·͢ $BSCPOͰ͸ॻ͚͍ͯͨͷͰɺ -BSBWFMϢʔβʔͷํ͸ͪ͜Β͕ೃછ Έ͕͋ΔͷͰ͸ͱࢥ͍·͢ 1)1Ͱ΋ॻ͚ΔΑ͏ʹͳͬͨͷ͸خ ͍͠Ͱ͢

Slide 10

Slide 10 text

࠷ޙʹ ຊ౰͸#$.BUI΋৮Ε͔ͨͬͨͷͰ͕͢ɺࣗ෼ͷ४උ͕௥͍͖ͭ·ͤΜͰͨ͠ɺɺɺ ͖ͪ͞͞Μͷͪ͜ΒͷಈըΦεεϝͰ͢ 1)1#$.BUIͷਐԽ

Slide 11

Slide 11 text

࠷ޙʹ ۙ೥1)1΍-BSBWFMͷϝδϟʔɾϚΠφʔΞοϓσʔτظ͕ؒ୹͘ɺόοΫΤϯυ΋ϑϩϯτΤ ϯυͷΑ͏ʹΩϟονΞοϓ͕େมʹͳ͍ͬͯΔؾ΋͠·͕͢ɺଟ͘ͷίϯτϦϏϡʔλʔͷ͓ ͔͚ͰΑΓྑ͍ιϑτ΢ΣΞ։ൃ͕Ͱ͖͍ͯΔ͜ͱʹײँ͔͠ͳ͍Ͱ͢ɻ ઌ೔ɺ1)1ษڧձ!౦ژͰ෢ా͞Μ͕ొஃ͞Εͯɺ1)1ͷυΩϡϝϯτͷ࿩Λͯ͘͠Ε·ͨ͠ɻ Ұ෦Ͱ͸੝Γ্͕ͬͯ·͢ɻ 044ߩݙνϟϯεͳͷͰɺͥͻʢࣗ෼΋΍Δ💪ʣ

Slide 12

Slide 12 text

ࠂ஌ ʢԾʣ1)1ΧϯϑΝϨϯε޿ౡ 2025೥ळɺPHPΧϯϑΝϨϯεΛ޿ౡͰ։࠵༧ఆͰ͢ ʢԾʣ ίΞελοϑ΍͓ख఻͍͍͚ͯͨͩ͠Δํ͕͍Βͬ ͠ΌͬͨΒɺconnpassͷHiroshima.phpͷάϧʔϓʹ͝ ࢀՃ͍͚ͨͩΔͱخ͍͠Ͱ͢ɻ ʮٕज़ʯͷ࿩ʹߜͬͨΧϯϑΝϨϯεʹ͠Α͏͔ͳͱߟ ͍͑ͯ·͢ɻʢ࠷ۙ͸։ൃख๏΍։ൃੜ࢈ੑɺϚωδϝ ϯτɺϚΠϯυηοτͳͲͷ࿩͕ଟ͍ͷͰɿ๻΋޷͖ͳ ͷͰ͕͢ɺٕज़ͷ࿩͍ͨ͠ʂʣ