Sakin PHPStan 1.0, madaidaicin nazari don lambar PHP

Bayan shekaru shida na ci gaba, an fitar da farkon fitowar PHPStan 1.0, wani mai nazarin yanayin aiki, mai ƙarfi. Yana ba ku damar nemo kurakurai a cikin lambar PHP ba tare da aiwatar da shi ko amfani da gwaje-gwajen raka'a ba. Lambar aikin an rubuta ta da PHP kuma an rarraba ta a ƙarƙashin lasisin MIT.

Mai nazarin yana ba da matakai 10 na tabbatarwa, tare da kowane mataki na gaba yana faɗaɗa ƙarfin wanda ya gabata kuma yana ba da ƙarin bincike mai tsauri:

  • Binciken asali, gano azuzuwan da ba a sani ba, ayyuka da hanyoyi ($wannan), masu canji marasa fayyace, da kuma wuce adadin hujjoji marasa daidai.
  • Gano masu canji da ba a fayyace su ba, hanyoyin sihiri da ba a san su ba, da kuma halayen aji tare da __call da __get.
  • Yana gano hanyoyin da ba a sani ba a cikin dukkan maganganu, ba'a iyakance ga kira ta hanyar $this ba. Mai duba PHPDocs.
  • Duba nau'ikan dawowa da kuma rarraba nau'ikan ga kadarori.
  • Gano ainihin lambar "matattu" (ba a taɓa kiranta ba). Gano misalin kiran da ke dawo da toshewar ƙarya, "in ba haka ba" waɗanda ba sa taɓa harbawa, da kuma lambar bayan bayanan dawowa.
  • Duba nau'ikan hujjoji da aka ba wa hanyoyi da ayyuka.
  • Gargaɗi game da bayanan da suka ɓace tare da bayanin nau'in.
  • Gargaɗi game da nau'ikan ƙungiyoyin kwadago marasa inganci waɗanda ke ayyana tarin nau'ikan ƙungiyoyi biyu ko fiye.
  • Gargaɗi game da hanyoyin kira da kuma samun damar mallakar kadarorin da nau'ikan da ba za a iya cirewa ba.
  • Duba amfani da nau'in "gauraye".

    Misalan matsalolin da aka gano:

    • Kasancewar azuzuwan da ake amfani da su a cikin misali, kamawa, nassoshi na rubutu, da sauran gine-ginen harshe.
    • Kasancewar da kuma samuwar hanyoyin da ayyukan da ake kira, da kuma adadin hujjojin da ake zartar.
    • Yana duba ko wata hanya ta dawo da bayanai iri ɗaya kamar yadda aka bayyana a cikin bayanin dawowa.
    • Kasancewa da kuma ganin kaddarorin da ake shiga, da kuma duba nau'ikan bayanai da aka bayyana da kuma ainihin da ake amfani da su a cikin kadarorin.
    • Daidaitaccen adadin sigogi da aka wuce zuwa kiran sprintf/printf a cikin toshe tsarin kirtani.
    • Kasancewar masu canji suna la'akari da tubalan da masu aiki da rassan rassan suka samar da kuma madaukai.
    • Jerin nau'ikan da ba su da amfani (misali "(string) 'foo'") da kuma tsauraran bincike ("===" da "!==")" akan bayanai tare da nau'ikan da opera daban-daban waɗanda koyaushe suna dawo da ƙarya.

    Muhimman fasalulluka na PHPStan 1.0:

    • An aiwatar da matakin tabbatarwa "9", wanda ke duba amfani da nau'in "gauraye", wanda aka tsara don ɗaukar ayyuka masu karɓar sigogi na nau'ikan daban-daban. Mataki na 9 yana gano rashin aminci na amfani da "gauraye," kamar wuce ƙimar nau'in "gauraye" zuwa wani nau'in, kiran hanyoyin nau'in "gauraye", da kuma samun damar mallakarsa, domin ƙila ba sa wanzuwa.
    • Sarrafa duba don ƙimar dawowa iri ɗaya don kiran aiki iri ɗaya ta amfani da bayanin @phpstan-pure da @phpstan-impure.
    • Ana yin nazarin rubutu a cikin tsarin try-catch-finally ta amfani da bayanin @throws.
    • Gano ƙa'idodi, hanyoyi, da abubuwan da ba su da alaƙa da juna amma ba a yi amfani da su ba.
    • Ana aika saƙonnin callback marasa jituwa zuwa ayyukan sarrafa array kamar array_map da usort.
    • Duba nau'ikan don ganin bayanan rubutu da suka ɓace.
    • Bayanin nau'in yanzu ya dace da PHPDocs, yana ba ku damar amfani da nau'ikan saƙonnin kuskure a cikin PHPDocs.

    source: budenet.ru

  • Sayi amintaccen masauki don shafuka tare da kariyar DDoS, sabar VPS VDS 🔥 Sayi ingantaccen masaukin yanar gizo tare da kariyar DDoS, sabar VPS VDS | ProHoster