$30 off During Our Annual Pro Sale. View Details »

90分間濃縮 PHPエラーの教室

90分間濃縮 PHPエラーの教室

エラーの種類と対処法を学ぼう。

Yusuke Ando

October 17, 2012
Tweet

More Decks by Yusuke Ando

Other Decks in Programming

Transcript

  1. 4IJNPLJUBQIQYusuke Ando (@yando)
    4IJNPLJUBQIQYusuke Ando (@yando)
    1)1Τϥʔͷڭࣨ
    ෼ؒೱॖ

    View Slide

  2. 4IJNPLJUBQIQYusuke Ando (@yando)
    4IJNPLJUBQIQYusuke Ando (@yando)

    View Slide

  3. 4IJNPLJUBQIQYusuke Ando (@yando)
    ෱ԬͰͷϘϥϯςΟΞٸืʂ

    View Slide

  4. 4IJNPLJUBQIQYusuke Ando (@yando)
    ͜Μͳܦݧ͸͋Γ·ͤΜ͔ʁ

    View Slide

  5. 4IJNPLJUBQIQYusuke Ando (@yando)
    ը໘͕ਅͬനʹ

    View Slide

  6. 4IJNPLJUBQIQYusuke Ando (@yando)
    ը໘ʹ͓ܦΈ͍ͨͳ΋ͷ͕ͰΔ

    View Slide

  7. 4IJNPLJUBQIQYusuke Ando (@yando)
    αʔόͷϩά͕ΰϛཷΊʹͳ͍ͬͯΔ

    View Slide

  8. 4IJNPLJUBQIQYusuke Ando (@yando)
    Τϥʔਖ਼͘͠ѻ͍͑ͯ·͔͢ʁ

    View Slide

  9. 4IJNPLJUBQIQYusuke Ando (@yando)

    View Slide

  10. 4IJNPLJUBQIQYusuke Ando (@yando)

    View Slide

  11. 4IJNPLJUBQIQYusuke Ando (@yando)
    1)1ͷΤϥʔͱྫ֎ʹؔ͢Δ
    औΓѻ͍ํ๏Λݟ͍͖ͯ·͢

    View Slide

  12. 4IJNPLJUBQIQYusuke Ando (@yando)
    ΤϥʔͷΠϩϋ
    wԿނΤϥʔ͕ى͖Δͷ͔
    wΤϥʔؔ࿈ͷઃఆ
    wΤϥʔϋϯυϦϯά
    wྫ֎ॲཧ
    ஍ຯ͚ͩΕͲॏཁͳ஌ࣝ

    View Slide

  13. 4IJNPLJUBQIQYusuke Ando (@yando)
    ԿނΤϥʔ͕ى͖Δͷ͔

    View Slide

  14. 4IJNPLJUBQIQYusuke Ando (@yando)
    Τϥʔͱ͸
    w1)1ͷεΫϦϓτΛ࣮ߦ͢Δࡍͷ֤ஈ֊Ͱൃੜ
    wߏจղੳ࣌ͷ໰୊
    wॲཧͷ࣮ߦதʹൃੜ͢Δ໰୊
    w֦ுϞδϡʔϧͳͲͷ֎෦ϓϩάϥϜ಺
    wωοτϫʔΫॲཧͳͲ௨৴͕ൃੜͨ͠৔߹
    ঢ়گʹԠͯ͡ਖ਼͍͠ରॲ͕ҟͳΔ

    View Slide

  15. 4IJNPLJUBQIQYusuke Ando (@yando)
    Τϥʔͷछྨ
    ॏେ౓ʹԠͯ͡Ϩϕϧ͕ଘࡏ
    छྨ ಺༰
    &@&3303'BUBM ࣮ߦෆՄೳɿॲཧ͸ఀࢭɺനը໘
    &@8"3/*/(8BSOJOH ܯࠂɿ࣮ߦ࣌ʹ໰୊ൃੜɺॲཧ͸ܧଓ
    &@1"34&1BSTF ղੳෆೳɿॲཧ͸࢝·Βͳ͍ɺനը໘
    &@/05*$&/PUJDF ௨஌ɿ໰୊ʹͳΓ͏Δঢ়گɺॲཧ͸ܧଓ
    &@453*$5
    &@%&13&$"5&%
    όʔδϣϯؒͷޓ׵ੑʹؔ͢ΔΤϥʔ

    View Slide

  16. 4IJNPLJUBQIQYusuke Ando (@yando)
    Կ΋ग़ͳ͍͔ɺյΕͨը໘͔ͷ෼͔Ε໨
    '"5"-
    1"34&
    /05*$&
    8"3/*/(FUD

    View Slide

  17. 4IJNPLJUBQIQYusuke Ando (@yando)
    &@1"34&1BSTF
    γϯϓϧͳߏจΤϥʔ
    FDIPFDIP
    FDIPEBUF

    FDIPUJNF

    wτʔΫϯͷग़ݱҐஔ͕ෆਖ਼
    wηϛίϩϯ๨ΕɺϒϨʔεͷରԠؔ܎
    wશ֯εϖʔεࠞೖ

    View Slide

  18. 4IJNPLJUBQIQYusuke Ando (@yando)
    &@&3303'"5"-
    ίʔυ͕࣮ߦ͞Εͨ࣌ͷঢ়ଶ͕໰୊
    PCK
    JG PCKOVMM
    \
    PCKHFU0CKFDU

    ^
    PCKNZ'VOD

    wߏจ͸߹͍͕ͬͯͨɺ࣮ߦ͠Α͏ͱͨ͠ॲཧ͕ࣦഊ
    wؔ਺໊ؒҧ͍ɺΦϒδΣΫτͷऔΓҧ͍
    w֎෦ϞδϡʔϧͷΤϥʔ

    View Slide

  19. 4IJNPLJUBQIQYusuke Ando (@yando)
    &@8"3/*/(
    ΤϥʔΛݕ஌ͯ͠;͞Θ͍͠ॲཧ͕ඞཁ
    CPEZpMF@HFU@DPOUFOUT bIPHFUYU`

    FDIPl)FMMPz
    wॲཧ͸࣮ߦͰ͖͕ͨɺࣦഊͯ͠͠·ͬͨ৔߹
    wϑΝΠϧ΍ωοτϫʔΫͷॲཧͳͲ
    wਖ਼ৗʹॲཧΛܧଓ͢Δࣄ͸͓ͦΒ͘೉͍͠

    View Slide

  20. 4IJNPLJUBQIQYusuke Ando (@yando)
    &@/05*$&
    ಈ͍͍ͯͨͱͯ͠΋ةݥੑ͋Γ
    JG EBUBOVMM
    \
    FDIPb)FMMP`
    FDIP)0(&
    ^
    wະఆٛͷม਺ɺఆ਺Λ࢖ͬͨ৔߹
    wؔ਺΁ͷҾ਺͕ਖ਼͘͠ͳ͍
    wߟྀͷ଍Γͳ͍ίʔυͰൃੜ͠΍͍͢

    View Slide

  21. 4IJNPLJUBQIQYusuke Ando (@yando)
    &@453*$5&@%&13&$"5&%
    ݹ͍Ҩ࢈Ͱൃੜ͠΍͘͢ɺෆՄආͳ৔߹΋
    DMBTT4BNQMF
    \
    GVODUJPOGPP

    \
    FDIP)J
    ^
    ^
    4BNQMFGPP

    w1)1ͷจ๏Λ1)1Ͱར༻ͨ͠৔߹
    wকདྷഇࢭ͞ΕΔ༧ఆͷػೳΛ࢖ͬͨ৔߹

    View Slide

  22. 4IJNPLJUBQIQYusuke Ando (@yando)
    4FHNFOUBUJPO'BVMU
    wϩάʹ͸z4FHNFOUBUJPO'BVMUzͱ͚ͩه࿥͞ΕΔ
    αʔόͷΞοϓσʔτͳͲ͕ඞཁʹͳΔ

    View Slide

  23. 4IJNPLJUBQIQYusuke Ando (@yando)
    Τϥʔؔ࿈ͷઃఆ

    View Slide

  24. 4IJNPLJUBQIQYusuke Ando (@yando)
    Τϥʔ͕ը໘ʹग़ͳ͍ʁ
    wൃੜͨ͠ΤϥʔΛදࣔ͢Δ͔͸ઃఆ࣍ୈ
    wQIQJOJ·ͨ͸IUBDDFTTͳͲͷઃఆ
    w࣮ߦ࣌ʹઃఆΛڧ੍తʹมߋ͢Δࣄ΋Մೳ
    wJOJ@TFU
    FSSPS@SFQPSUJOH
    EJTQMBZ@FSSPST

    wΤϥʔΛϩάʹه࿥͢Δ͔Ͳ͏͔͸ผͷઃఆ
    ։ൃ࣌͸දࣔɺӡ༻࣌͸ه࿥͕ਖ਼͍͠

    View Slide

  25. 4IJNPLJUBQIQYusuke Ando (@yando)
    ਖ਼͍͠ઃఆ
    FSSPS@SFQPSUJOH&@"--
    EJTQMBZ@FSSPST0O
    EJTQMBZ@TUBSUVQ@FSSPST0O
    MPH@FSSPST0O
    FSSPS@MPHQBUIUPFSSPSMPH
    FSSPS@SFQPSUJOH&@"--d&@%&13&$"5&%d&@453*$5
    EJTQMBZ@FSSPST0⒎
    EJTQMBZ@TUBSUVQ@FSSPST0⒎
    MPH@FSSPST0O
    FSSPS@MPHQBUIUPFSSPSMPH
    ޓ׵ੑΤϥʔ͸ແࢹ
    શͯΛݕ஌ɺදࣔ
    දࣔ͸͠ͳ͍

    View Slide

  26. 4IJNPLJUBQIQYusuke Ando (@yando)
    ӡ༻தͷΤϥʔΛӅ͢ཧ༝
    %#৘ใͳͲ͕ೖΔ৔߹΋
    ෆ۩߹ͷൃੜ࣌ʹܯ
    ࠂ͕ग़Δ৔߹
    ද่͕ࣔΕΔ͔΋

    View Slide

  27. 4IJNPLJUBQIQYusuke Ando (@yando)
    ͜͏͍͏ͷ͸

    View Slide

  28. 4IJNPLJUBQIQYusuke Ando (@yando)
    ͜Ε΋μϝ
    QIQ
    !USJHHFS@FSSPS )J

    FDIP8PSME
    ڧ੍తʹແࢹ
    ͜ΕΛଟ༻͢Δͱো֐ൃੜ࣌ʹख͕͔Γ̌

    View Slide

  29. 4IJNPLJUBQIQYusuke Ando (@yando)
    ΤϥʔϋϯυϦϯά

    View Slide

  30. 4IJNPLJUBQIQYusuke Ando (@yando)
    ΤϥʔϋϯυϦϯά
    wΤϥʔ͕ൃੜͨ͠ޙʹߦ͏ॲཧ
    wൃੜͨ͠ΤϥʔͷϨϕϧʹԠͯ͡ॲཧ͕Մೳ
    wඪ४ͷΤϥʔϋϯυϥ͸QIQJOJͷઃఆʹԠͨ͡ॲཧ
    w೚ҙͷॲཧΛొ࿥͢Δࣄ΋Մೳ
    wΤϥʔϋϯυϥ͔Βݩͷॲཧʹ΋໭ΕΔ
    w೚ҙͷΤϥʔΛى͜͢ࣄ΋Մೳ
    ϑϨʔϜϫʔΫͳͲͰ΋ར༻͞Ε͍ͯΔ

    View Slide

  31. 4IJNPLJUBQIQYusuke Ando (@yando)
    ΤϥʔϋϯυϦϯάͷྫ
    ඪ४ͷॲཧҎ֎ͷରԠ͕Մೳ
    GVODUJPOIBOEMFS OP TUS
    \
    FDIP&SSPSTUSaO
    SFUVSOUSVF
    ^
    TFU@FSSPS@IBOEMFS IBOEMFS

    FDIPB
    USJHHFS@FSSPS .Z&SSPS

    wΤϥʔͷ৘ใΛҾ਺Ͱड͚औΔ
    wSFUVSOͰݩͷ৔ॴ΁෮ؼ͢Δ

    View Slide

  32. 4IJNPLJUBQIQYusuke Ando (@yando)
    ΤϥʔϋϯυϦϯάͷྫ̎

    View Slide

  33. 4IJNPLJUBQIQYusuke Ando (@yando)
    ΤϥʔϋϯυϦϯάͷޙ
    ϋʔυͳӡ༻Λ଱͍͑ͯΔ͔ͷࢼۚੴ
    wॲཧ͕ܧଓ͢Δ8BSOJOH΍/PUJDFͷޙʹ͸ద੾ͳॲཧ
    wෆ଍͢ΔͱۭͬΆͷϦετɺ่Εͨը໘ͳͲʹܨ͕Δ
    CPEZpMF@HFU@DPOUFOUT bIPHFUYU`

    JG CPEZGBMTF
    \
    NZ@FSSPS

    FYJU
    ^
    FDIPl)FMMPz

    View Slide

  34. 4IJNPLJUBQIQYusuke Ando (@yando)
    ॏཁͳΜͰ͢ʂ
    ͕͢͞1)1ɺΤϥʔ࣌ͷฦΓ஋͕όϥό SZ

    View Slide

  35. 4IJNPLJUBQIQYusuke Ando (@yando)
    ྫ֎ॲཧ

    View Slide

  36. 4IJNPLJUBQIQYusuke Ando (@yando)
    ྫ֎ॲཧ
    w1)1͔Βར༻Ͱ͖ΔΤϥʔॲཧ
    w+BWBͳͲͷݴޠͰ΋࣮੷͕͋Δػߏ
    wޡͬͨར༻ํ๏ʹΑΓ༗֐ແӹʹͳ͍ͬͯΔྫଟ਺
    wਖ਼͘͠࢖͑͹Τϥʔॲཧָ͕͘͢͝ʹͳΔ
    wؒҧͬͯ࢖͏ͱແବʹίʔυ͕ଟ͘ͳͬͯɺڍಈ΋่յ
    ͜Ε͔Β͸ྫ֎Λ࢖ͬͯߦ͖͍ͨ

    View Slide

  37. 4IJNPLJUBQIQYusuke Ando (@yando)
    ྫ֎ॲཧͷྫ
    ྫ֎ΦϒδΣΫτΛUISPX͢ΔͱDBUDIʹೖΔ
    GVODUJPOIPHF

    \
    JG USVF
    \
    UISPXOFX&YDFQUJPO &SSPS

    ^
    ^
    USZ\
    IPHF

    ^DBUDI &YDFQUJPOF
    \
    FDIPFHFU.FTTBHF

    FYJU
    ^

    View Slide

  38. 4IJNPLJUBQIQYusuke Ando (@yando)
    ྫ֎ΦϒδΣΫτ
    wΦϒδΣΫτ͔ΒΤϥʔ৘ใ͕औಘՄೳ
    w&YDFQUJPOΛOFX͢Δ࣌ʹηοτ͞Εͨ৘ใΛऔಘ
    wHFU.FTTBHFHFU$PEFHFU'JMFHFU-JOFHFU5SBDF

    View Slide

  39. 4IJNPLJUBQIQYusuke Ando (@yando)
    ྫ֎ॲཧͷࣦഊྫ
    ྫ֎ΦϒδΣΫτΛSFUVSO
    GVODUJPOIPHF

    \
    JG USVF
    \
    SFUVSOOFX&YDFQUJPO &SSPS

    ^
    ^
    USZ\
    IPHF

    ^DBUDI &YDFQUJPOF
    \
    FDIPFHFU.FTTBHF

    FYJU
    ^

    View Slide

  40. 4IJNPLJUBQIQYusuke Ando (@yando)
    ྫ֎ॲཧͷࣦഊྫ
    DBUDI͢Δྫ֎ͷܕ͕߹͍ͬͯͳ͍
    GVODUJPOIPHF

    \
    JG USVF
    \
    UISPXOFX&YDFQUJPO &SSPS

    ^
    ^
    USZ\
    IPHF

    ^DBUDI &YDFQUPOF
    \
    FDIPFHFU.FTTBHF

    FYJU
    ^

    View Slide

  41. 4IJNPLJUBQIQYusuke Ando (@yando)
    ྫ֎ॲཧͷࣦഊྫ
    DBUDIͯ͠΋ͳʹ΋͍ͯ͠ͳ͍
    GVODUJPOIPHF

    \
    JG USVF
    \
    UISPXOFX&YDFQUJPO &SSPS

    ^
    ^
    USZ\
    IPHF

    ^DBUDI &YDFQUJPOF
    \
    ^

    View Slide

  42. 4IJNPLJUBQIQYusuke Ando (@yando)
    ྫ֎ॲཧʹؔ͢Δޡղ
    wUSZDBUDIΛͨ͘͞Μॻ͘ͷ͕ਖ਼͍͠ίʔυ
    ˠ͖ͪΜͱॻ͚͹ڊେͳίʔυͰ΋DBUDI͸ҰՕॴͰΑ͍
    wೖྗΤϥʔͳͲͰ΋ྫ֎ॲཧΛ࢖͏΂͖
    ˠ௨ৗൃੜ͠͏Δ΋ͷ͸ྫ֎Ͱ͸ͳ͍
    wDBUDI͢Ε͹ͱΓ͋͑ͣ͸0,
    ˠDBUDI͢Δͷ͸Ͳ͏ͯ͠΋ඞཁͳ৔߹ͷΈ
    ਖ਼͘͠ྫ֎Λѻ͏ϓϩδΣΫτͷكͳࣄ

    View Slide

  43. 4IJNPLJUBQIQYusuke Ando (@yando)
    ྫ֎ॲཧͷࣗಈԽ
    wDBUDI͞Εͳ͔ͬͨྫ֎͕࠷ऴతʹࢦఆͨؔ͠਺΁౸ୡ
    GVODUJPOIBOEMFS FYDFQUJPO
    \
    FDIPFYDFQUJPOHFU.FTTBHF

    ^
    TFU@FYDFQUJPO@IBOEMFS lIBOEMFSz

    View Slide

  44. 4IJNPLJUBQIQYusuke Ando (@yando)
    ·ͱΊ
    OPNPSFFSSPS@SFQPSUJOH

    OPNPSF!IPHF

    wʮը໘͕ന͘ͳΓ·ͨ͠ʯ͸ແҙຯ
    wΤϥʔͷ಺༰Λ֬ೝ͠ͳ͚Ε͹ରԠ͸ෆՄೳ
    w/PUJDF͕ଟ͍͔ΒΤϥʔΛফ͢͸ຊ຤స౗
    w௨ৗՔಇத͸Τϥʔ͕ൃੜ͠ͳ͍ͷ͕ཧ૝
    wϥΠϒϥϦ΍ϓϥάΠϯ͕/PUJDF΍8BSOJOHΛਨΕྲྀ͢ͷ
    ͸ඇৗʹ֐͕େ͖͘ɺഇΕΔݪҼ

    View Slide

  45. 4IJNPLJUBQIQYusuke Ando (@yando)
    ࣭໰ʁ

    View Slide