Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ほげ言語にあってPHPにない機能
Search
Hisateru Tanaka
February 11, 2024
Technology
6
3k
ほげ言語にあってPHPにない機能
PHPカンファレンス関西2024発表資料です。
Hisateru Tanaka
February 11, 2024
Tweet
Share
More Decks by Hisateru Tanaka
See All by Hisateru Tanaka
なまけものオバケたち -PHP 8.4 に入った新機能の紹介-
tanakahisateru
1
140
哲学史とモデリング
tanakahisateru
4
700
オブジェクト指向宗教史
tanakahisateru
31
17k
君たちはどうプログラミングするか
tanakahisateru
12
1.7k
デバッグ用ロガーの注入どうする?
tanakahisateru
2
580
アンドキュメンテッド ちょうぜつソフトウェア 設計入門 「オブジェクト指向に定義はない」のか?
tanakahisateru
25
9.4k
ちょうぜつ改め21世紀ふつうのソフトウェア設計
tanakahisateru
14
8.4k
まんがのかきかた
tanakahisateru
8
690
10秒で衝突するUUIDの作り方
tanakahisateru
40
40k
Other Decks in Technology
See All in Technology
サーバーレス環境における生成AI活用の可能性
mikanbox
1
160
アクセシブルなマークアップの上に成り立つユーザーファーストなドロップダウンメニューの実装 / 20250127_cloudsign_User1st_FE
bengo4com
1
1.1k
オーティファイ会社紹介資料 / Autify Company Deck
autifyhq
10
120k
RevOpsへ至る道 データ活用による事業革新への挑戦 / path-to-revops
pei0804
1
480
Tech Blog執筆のモチベート向上作戦
imamura_ko_0314
0
620
Asset Centric な データ変換パイプラインの攻略法
recruitengineers
PRO
1
100
クロスアカウントな RDS Snapshot Export による カジュアルなデータ集約の仕組み / 202501-finatext-technight-lt
wa6sn
1
120
CNAPPから考えるAWSガバナンスの実践と最適化
yuobayashi
4
390
2025-01-24-SRETT11-OpenTofuについてそろそろ調べてみるか
masasuzu
0
130
実践している探索的テストの進め方 #jasstnano
makky_tyuyan
1
130
あなたの興味は信頼性?それとも生産性? SREとしてのキャリアに悩むみなさまに伝えたい選択肢
jacopen
5
2.1k
インフラコストとセキュリティ課題解決のためのリアーキテクチャリング / srekaigi2025
hgsgtk
3
3.6k
Featured
See All Featured
Scaling GitHub
holman
459
140k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.4k
KATA
mclloyd
29
14k
Docker and Python
trallard
43
3.2k
GraphQLとの向き合い方2022年版
quramy
44
13k
Being A Developer After 40
akosma
89
590k
Making the Leap to Tech Lead
cromwellryan
133
9k
Testing 201, or: Great Expectations
jmmastey
41
7.2k
How GitHub (no longer) Works
holman
312
140k
Transcript
΄͛ݴޠʹ͋ͬͯ 1)1ʹͳ͍ػೳ GBMTF )" (&
·͍ͲͰ͓·Μ͕ͳ ؔ1)1Ϣʔβʔ͓͡͞ΜͰ͢ w ʮͪΐ͏ͥͭιϑτΣΞ ઃܭೖʯஶऀ w ؔͷ1)1ίϛϡχςΟʹ ΄Ͳ͍·͢ w ݩͷօ͞Μ͝ແࠫଡͰ͢
Α͏ͦ͜ଞҬͷօ͞Μ !UBOBLBIJTBUFSV ాதͻͯ͞Δ ͪΐ͏ͥͭιϑτΣΞઃܭೖ ʕʕ1)1Ͱཧղ͢ΔΦϒδΣΫτࢦͷ׆༻ ాதͻͯ͞Δஶ *4#/
΄͛ݴޠ ͱʜ
ϙʔϧɾάϨΞϜ ʮී௨ͷౕΒͷ্Λߦ͚ʯͰ
΄͛ݴޠͷύϥυοΫε w ͦͦ͜͜ਓؾͷϓϩάϥϛϯάݴޠΛԾʹʮ΄͛ݴޠʯͱ͢Δ w ΄͛ݴޠ͕࠷ߴͩͱݴ͏ਓɺΑΓػೳͳݴޠΛྼ͍ͬͯΔͱݟԼ͢ w ͱ͜Ζ͕ɺ΄͛ݴޠΑΓߴͳػೳΛ࣋ͭݴޠ࣮ࡏ͢Δ w ͦ͏ݴΘΕͯɺΑΓߴͳݴޠػೳͷҙຯΛೝࣝͰ͖ͳ͍ w
΄͛ݴޠΑΓෳࡶͳݴޠաͰແବͩͱޡೝ͍ͯ͠Δ w ͜ͷؔ૬ରతͰɺ΄͛ݴޠԿʹͰஔ͖͑ͯݴ͏͜ͱ͕Ͱ͖Δ
͜Θ ҙຯΘ͔ΒΜ ͓͓ Ϋιݴޠ͕ ΄͛ݴޠѪऀͷ ೝࣝϨϯδ
΄͛ݴޠ1)1ͩͱͯ͠ɺ ͳ͍ػೳͷඞཁੑΛ͓͖ͬͯ·͠ΐ͏
Ϧετͱࣙॻͷ۠ผ 1)1Ҏ֎ͷ΄ͱΜͲͷݴޠ͔Βݟͯҧײ͋Δͷ͕BSSBZ ɻ ྫ͑1ZUIPOͷجຊܕMJTUͱEJDUͰશ͘ผɻ 1)1ͷྻ1ZUIPOͰݴ͏ͱ0SEFSFE%JDUʹ͋ͨΔɻ 1)1ʙϦετͷΑ͏ʹ͏ͱϦετͱͯ͠࠷దԽ͞ΕΔΑ͏ʹɻ ύϑΥʔϚϯεͳ͘ͳ͚ͬͨͲɺߏจ্BSSBZͷΈɻ %PDίϝϯτͰBSSBZͱMJTUΛ۠ผͯ͠1)14UBOΛཔΔɻ
δΣωϦΫε ܕύϥϝʔλ *UFSBUPS"OJNBMͷΑ͏ͳΈ߹Θͤܕɻ ίϯύΠϧ࣌ʹෆਖ਼Λશʹ͚ͳ͍ॲཧܥͰ͍͠ɻ ͔Ζ͏ͯ͡ྻʹؔͯ͠ɺ%PDίϝϯτͱ੩తղੳͰิॿ͢Δश׳ɻ "OJNBM<>BSSBZTUSJOH "OJNBMMJTU"OJNBMʜ 1)14UBOʹ!UFNQMBUF͕͋Δ͚Ͳɺ5ZQF4DSJQUͷํ͕ང͔ʹʜ
શ͕ͯΦϒδΣΫτ :FT3VCZ 1ZUIPO +BWB4DSJQU 4DBMBʜ มʹଋറͰ͖Δͷશͯɺಉ͡ܗࣜͰϝιουίʔϧՄೳɻ ΦϒδΣΫτҎ֎ͷܕ͕ͳ͍ͷͰΦϑαΠυϧʔϧ͕গͳ͘ͳΔɻ /P$ +BWB (P
3VTUʜ8): ॏࢹͷݴޠͰɺόΠτ෯ΧπΧπͷ࠷దԽΛهड़͍ͨ͠ɻ 4DBMB3VCZͷΑ͏ͳΦϒδΣΫτΛόΠτίʔυʹ࠷దԽɻ 1)1ͱ͔1FSMͱ͔ʜ྆ํͷσϝϦοτΛ࣋ͭײ͡ˠؤுΖ͏ɻ
ύοέʔδ ໊લۭؒ Մࢹੑ +BWBͷσϑΥϧτʮΫϥεͷ࠶ར༻ಉҰύοέʔδʯɻ֎෦ެ ։ʹQVCMJDDMBTTͱࢦఆ͢Δඞཁ͕͋Δɻ GJOBMDMBTTҎ֎ʹTFBMFEDMBTT͋ΔɻܧঝؔΛ࡞ΕΔͷύο έʔδͰ͚ͩɺͷΑ͏ʹ੍ݶͰ͖Δɻ 1)1ͷ3'$ʹQSJWBUFDMBTTͷ͋ͬͨؾ͕͢ΔΜ͚ͩͲͳʜ %PDίϝϯτͰ!JOUFSOBMͳͲΛͬͯҙਤΛද͓ͯ͜͠͏ɻ
UIJT ·ͨTFMG ͷলུ ΫϥεͰࣗΛද͢UIJTΛলུͯ͠ॻ͚Δɻ w ϝιουˠͳ͔ͬͨΒάϩʔόϧؔ w ϩʔΧϧมˠͳ͔ͬͨΒϓϩύςΟˠͳ͔ͬͨΒάϩʔόϧ Ͱ͖Δ$ +BWBܥ
$ 3VCZ ͪΐͬͱΈҧ͏͚Ͳ Ͱ͖ͳ͍1)1 1ZUIPO +BWB4DSJQU (P 3VTUʜ ͲͪΒ͕ྑ͍͔୯७ͳ༏ྼͱݴ͑ͳ͍ɻ Ͱ1)16OJUͷUIJTBTTFSU&RVBMT +6OJUΑΓΊΜͲ͍ͳ
͠͞ͷਪҠੑ ҉ܕมͷݫ͠͞ "##$Ͱ͋Ε"$Ͱ͋Δɻ ʜͱͳΒͳ͍߹͕͋Δɻ WBS@EVNQ GBMTFGBMTFl USVF WBS@EVNQ l
GBMTF ʮ҉Ͱʹมͯ͠ൺֱʯʮԿ͔ͩGBMTFͬΆ͍ʯͱ͍ͬͨΏΔ͍ ՁੑൺֱΛΔํɻ͔ͱ͍ͬͯͰݫ͗͢͠Δ߹ʜ ଞͷݴޠʮൺֱ͢ΔͱΤϥʔʯΛબ͍ͯ͠Δ͜ͱ͕ଟ͍ɻ
จࣈྻҎ֎ͷϋογϡࣙॻΩʔ +BWB0CKFDUʹIBTI$PEF Λ࣋ͭˠԿͰΩʔʹ͑Δɻ DIFTT(SJE.BQQVU OFX1PJOU% QBXO 1ZUIPOͷλϓϧΠϛϡʔλϒϧͳͷͰࣙॻͷΩʔʹͳΔɻ
DIFTT@HSJE@EJDU< >QBXO 3VCZҙͷΦϒδΣΫτ0,ͰɺγϯϘϧܕ͕͍͍ײ͡ɻ +BWB4DSJQUͱ1)1จࣈྻΩʔͷΈɻ
҉มলུͷ໌ࣔతͳఆٛ 4DBMB࣍ͷΑ͏ͳ҉ϧʔϧΛʮఆٛʯ͢Δจ๏Λ࣋ͭ wԋࢉͰܕ͕߹Θͳ͍ͱ͖ͷมΛͲ͏͢Δ͔ wಛఆͷهड़ ྫ͑UIJT Λলུͨ࣌͠ͷڍಈ JNQMJDJUΩʔϫʔυʜ΄͛ݴޠͷϢʔβʔ͕ཧղͰ͖ͳ͍ݴޠػೳͷ ͔ͳΓ্Ґʹ͋ΔΜ͡Όͳ͍Ͱ͠ΐ͏͔ɻ ͰυϝΠϯಛԽݴޠͳΜ͔ʹศརɻٕज़తͳϊΠζݮɻ
طଘΫϥεͷಈతͳ֦ு 3VCZͷಛҟΫϥεɻ3BJMTͰEBZTͱ͔ॻ͚ΔΞϨɻ wϦςϥϧͷ3VCZຊମͷ*OUFHFSΠϯελϯε طଘ wϝιουͷEBZTޙ͚ͷ(FNʹఆٛ͞Ε͍ͯΔ 4DBMBͷ߹ɺଘࡏ͠ͳ͍ϝιουͷίʔϧ࣌ʹɺJNQMJDJUఆٛͨ͠ ϥούʔΫϥε͕উखʹ͔Ϳ͞ΔΑ͏ͳΈͰɺࣅͨΑ͏ͳڍಈΛ ࣮ݱͰ͖Δɻ
ϚΫϩ ϝλϓϩάϥϛϯά -JTQσʔλߏͱϓϩάϥϜίʔυ͕ಉ͡ܗΛ͍ͯ͠Δɻσʔλߏ Λ࡞ΔϓϩάϥϜΛॻ͚ͩ͘ͰɺಈతʹϓϩάϥϜΛੜͰ͖Δɻ 3VCZ4DBMBϓϩάϥϜͰϓϩάϥϜΛ࡞ΔͨΊͷػೳΛ࣋ͭɻ /JN4DBMBͷJNQMJDJUʹࣅͨܗͰɺߏจΧελϚΠζϚΫϩΛ࣋ͭɻ 1)1ʹࠇຐज़༻ͷػೳ͕͋·Γͳ͍ͷͰɺQIQϑΝΠϧʹจࣈྻͰ ϓϩάϥϜίʔυΛॻ͍͍ͯ͘͜ͱʹɻ μα͍
Ͱ࣮ࡍɺςϯϓϨʔτΤϯδϯͳΜ͔ͰΑ͘औΒΕͯΔํ๏ɻ
ԋࢉࢠΦʔόʔϩʔυ $ ͷDPVUl)FMMP8PSMEzFOEMͷͷͱ͜Ζɻ ͦͦจࣈྻͷՃࢉ͕ ͳͷTUSDBU ͷγϣʔτΧοτɻ 3VCZ 4DBMB ͪΐͬͱݶఆత͚ͩͲ1ZUIPO
ΦϒδΣΫτʹԋࢉࢠΛͬ ͨ࣌ͷڍಈΛఆٛͰ͖Δɻ +BWBจࣈྻͷՃࢉ͚ͩͯ͠ɺΧελϚΠζੑΛҙਤతʹഉআɻ 1)11ZUIPOʹࣅͯϚδοΫϝιου͕͋Δ͚ͲɺͰ͖ͳ͞+BWBͱಉ͡ ͙Β͍ɻϢʔβʔ͕Ͱ͖ΔͷQSPQͱQSPQͷϑοΫ͙Β͍ɻ
άϦʔϯεϨουͳඇಉظ*0 04ͷϚϧνεϨουΛΘͣɺݴޠॲཧܥͰฒߦॲཧɻ ཁ1SPNJTFΈ͍ͨͳΞϨɻ+BWB4DSJQUͱ1ZUIPOɺݴޠϨϕϧ ͰBTZODBXBJUΩʔϫʔυΛ࣋ͭɻ (Pશͯͷαϒϧʔνϯίʔϧʹ͓͍ͯɺ໌ࣔతͳBXBJUͳ͠Ͱ*0 ͪඇಉظΛαϙʔτɻ͔͠04ͷฒྻॲཧʹࣗಈόϥϯεɻ 1)1ͩͱ4XPPMF͕͍͚ۙͲɺ(Pඇಉظ*0ͷ؆୯͞ͱ҆શ͞Ͱ܈ Λൈ͍͍ͯΔɻ(PHSPVUJOFͷ%4-ͩͱࢥ͏ɻ
Πϛϡʔλϒϧͳม 1)1ͰɺΦϒδΣΫτͷϓϩύςΟʹSFBEPOMZࢦఆ͕૿͑ͨɻ ʜ͕ɺଟ͘ͷؔܕʹ͋ΔMFUɺ+BWB4DSJQUͷDPOTUͳ͍ɻ 1)1Ͱมͷ্ॻ͖Λ੍ݶͰ͖ͳ͍ˠͷͰؔͷείʔϓখ͞ ͘ดͯ͡Γ·͠ΐ͏ɻ 3VTUσϑΥϧτ͕ΠϛϡʔλϒϧͰɺՄมͳมʹNVUΛ͚ Δɻαϒߏ͕NVUͷͱ͖ɺʹNVU͕ײછ͢Δɻ )BTLFMMʮϞφυͰԿ͔Ͱ ʯ
TDBMBSܕ SFTPVSDFܕ JT@TDBMBS ͋ΔͷʹɺJOUcGMPBUcTUSJOHcCPPMΛ૯শ͢Δܕ͕ͳ͍ɻ Ͳ͏ͤͳΒJT@OVNFSJD ʹରԠ͢ΔOVNFSJDܕ͋ͬͯཉ͍͠ɻ DBMMBCMFͱJUFSBCMFͳΜͯ૯শ͋Δͷʹɻ GPQFO ͷΓʹରԠ͢ΔSFTPVSDFܕ͕ͳ͍ɻͳΜͰ͜͜NJYFE ͳΜͩ
ͬͯͳΔɻ Ұ؏ੑ͕ޙճ͠ʹͳͬͯ͠·͏ݴޠͩͱ͍͏ɻ
6'$4 6OJGPSN'VODUJPO$BMM4ZOUBYͷུɻҎԼͷͭಉ͡ҙຯ wBQQFOE EBUB Y wEBUBBQQFOE Y ͦͷ··ߴ֊ؔΕΔײ͡ͱɺϝιουνΣʔϯ͍͚ͯͦ͠͏ͳͷ
ͷɺͲͬͪͰॻ͍͍͍ͯͱ͍͏ΞΠσΞɻ%ݴޠͱ/JN͕࠾༻ɻ 1)1ͰEBUBBQQFOE ͰDBMMBCMFʹͳΔɻ ͱ͜ΖͰ/JNʜ
ίʔυهड़·ΘΓͷػೳ͕ඇৗʹڧ͍ /JN͚ͩͲɺଟଶੑ όϦΞϯτ Ͱ ։์ดݪଇΛຬͨͤͳ͍ IUUQT[FOOEFWUBOBLBIJTBUFSVBSUJDMFTBG l/JNɺʮ͠ΞϥϯɾέΠ͕ΦϒδΣΫτࢦͱݴΘͳ͔ͬͨΒʯ ͱ͍͏ྺ࢙ͷJGΛײͤͯ͘͡͞ΕΔݴޠͩͱࢥͬͨΛ͠·͢ɻ
࠷ڧͷ΄͛ݴޠ ͳΜ͔͋ΒΜͷ
ͱ͜ΖͰ1)1ͷ࡞ऀʜ ʮ1)1ࣃϒϥγʯ 1)1ࣃϒϥγ͘Β͍ڵฃʹ͢ ΔɻγϯϓϧͰɺຖ͏ศརͳಓ ۩ɻ͔ͩΒͲ͏ͨ͠ɻࣃϒϥγʹ ͍ͭͯॻΛړΔ͕͍ͭΔ͔ʁ
ͦΜͳࣃϒϥγɺͰܕ γεςϜ͕ڧԽ͞Ε͖ͯ·ͨ͠
͍ͬΆ͏ࢲʜ ઌݞγεςϜ͕յΕͯɺࣃϒϥγͷΑ͏ͳͷΛΠϯετʔϧ͠·ͨ͠
HJIZPKQ 1)1ͷੜΈͷɺϥεϚεɾϥʔυϑࢯΠϯλϏϡʔ IUUQTHJIZPKQOFXTSFQPSU z1)1πʔϧͰ͢ɻϋϯϚʔͷΑ͏ͳͷͰ͢ɻԿͷมͳ͍ಓ۩͚ͩΕ ͲɺͦΕΛͬͯ࡞ΒΕͨͷਓʑͷΒ͠Λม͖͑ͯ·ͨ͠ɻ zࣾձΛΓସ͑ͨͷϋϯϚʔΛ࡞ͬͨஉͰͳ͘ɺͦΕͰͷΛ࡞ͬͨ ਓʑͰ͢ɻϋϯϚʔΛͬͨਓʑͰ͢ɻ ˡલͷͰདྷͷͱ͖
ʮϓϩάϥϛϯά ݴޠ खஈʯ ୭͕ݴ͏͔Ͱ͍ͣͿΜҙຯ͕มΘͬͯ͘ΔΑͶ
ϓϩάϥϛϯά ઃܭ ӡ༻ମ੍ ࢿۚ܁Γ ϚʔέςΟϯά Ϣʔβʔαϙʔτ ΤϯυϢʔβʔ ϢʔβʔจԽ ࣾձৗࣝͷมԽ ίϯςϯπ
ίϛϡχέʔγϣϯ ੜ׆Πϯϑϥ σϕϩούʔจԽ γεςϜΠϯϑϥ Χϧνϟʔ ,ʙ.ഒͷ ਓޱنͷࠩ
ʮखஈͳΜͯςΩτʔͰ͍͍Αʯ ͱ୭ݴͬͯͳ͍ɻ
Ϋι࣮͕ؒҧͬͯ ചΕͯ͠·ͬͨྫ खஈภॏͷצҧ͍͕ ى͖ͨ։ൃͷ࿏ ͱ͍͑ɺͬͪ͜·ͩച্ Ͱࢧ͑Εٹ͍͕͋Δ ༧ࢉͷग़ॴͲ͜ʜ
ݴޠҰ؏ੑΑΓखஈɻ తͱ֓೦͕߹͑शಘ͙͢ɻ
͋ͷੈք࠷େऀͷݴޠʜ ྺ࢙తཧ༝ʹΑͬͯ࠷Ұ؏ੑ͕ࣦΘΕͨݴޠ ΠϯυɾϤʔϩούޠͷݯྲྀ ϰΝΠΩϯάͷ৵߈ έϧτจԽ ϑϥϯεͷҰ෦ ͩͬͨ࣌ ΩϦετڭ ϥςϯޠ ݹӳޠʹ໊ࢺҎ֎ͷ୯ޠʹ
֨ͷมԽ͕͋ͬͨɻϰΝΠΩ ϯά࣌ʹ୯७Խ͔ͨ͠ɻ ϑϥϯεޠͱϥςϯޠʹޠኮͷ ಛ͕େ෯ʹ৵ུ͞Εͨɻ ࣮ࡍͷൃԻͱҧ͏εϖϧΛ׆൛ ҹͯ͠͠·ͬͨɻ
खஈͱతΛຬͨ͢࠷దͳͷ ੈքʹͬͱෆࢥٞͳࣗવݴޠ w ؾީɾڥɾจԽʹΑͬͯɺ֓೦Λද͢୯ޠʹଟ͘ͷҧ͍͕͋Δɻ w ͨͱ͑ɺ৭Λද֓͢೦͕ʮനʯʮࠇʯʮʯ͔͠ͳ͍ݴޠ͕࣮ࡏ͢Δɻ w લޙࠨӈͱ͍ͬͨ૬ରతͳ͖Λද͢୯ޠΛ࣋ͨͳ͍ݴޠͷ෦͍Δɻ w ൴Βͷੜ͖ํʹ૬ରํͷ֓೦͕ొ͠ͳ͍ɻ͖Λৗʹ౦ೆͰೝࣝ
͍ͯͯ͠ɺͦΕͰશ͘ࠔ͍ͬͯͳͦ͞͏ɻ w ීวจ๏ ਓྨڞ௨ͷίΞ͕͋Δͱߟ͑ͨ νϣϜεΩʔઌੜͼͬ͘Γ
ʮͰ্ͳݴޠΛѻ͑Δͱɺଧ͍ͪͯ͜ਓ݄ ୯ՁऔΕΔͰ͠ΐʯͬͯ ͋ʔɺ͜ͷͰɺͦ͏͍͏ײ͔֮ͬ͢Γͳ ͘ͳͬͪΌ͍·ͨ͠Ͷɻ
༏ྼͰͳ͘ϑΟʔϧυͷҧ͍ͷཧղΛ ͜ͷຊͰհ͞Ε͍ͯΔݴޠ 3VCZ *P 1SPMPH 4DBMB &SMBOH $MPTVSF )BTLFMM
༁൛ɻ·ͩ+43VTU ͞Εͯͳ͔ͬͨࠒɻ$+BWBؚ·Ε ͳ͍͠ɺ4NBMMUBML1BTDBMͳ͍ɻͦ ΕΒΛؚΊΔͱͭ͡Όࡁ·ͳ͍ɻ ϑΟʔϧυΛݟۃΊͯదʹબͿͷɻ
Ͱ1)1ͷϑΟʔϧυ ༷ʑͳ׆༻ࣄྫΛ͜ͷΧϯϑΝϨϯε དྷ݄࠶དྷ݄ Ͱʹ͠·ͨ͠Ͷ ίϛϡχςΟͷ׆ൃ͞ϑΟʔϧυͷ͞Λද͠·͢ɻ ͜Ε͕ɺ1)1ӳޠͷΑ͏ͩͱݴΘΕΔॴҎͰ͢