Tom qab rau xyoo ntawm txoj kev loj hlob, thawj qhov kev tso tawm ruaj khov ntawm PHPStan 1.0 tau tshwm sim, uas tso cai rau koj pom qhov yuam kev hauv PHP code yam tsis tau ua nws thiab siv cov kev xeem hauv chav. Txoj haujlwm code yog sau hauv PHP thiab faib raws li MIT daim ntawv tso cai.
Lub ntsuas ntsuas muab 10 qib ntawm kev kuaj xyuas, uas txhua qib tom qab nthuav dav lub peev xwm ntawm qhov dhau los thiab muab cov kev kuaj xyuas nruj dua:
Piv txwv ntawm cov teeb meem hauv qab tau txheeb xyuas:
- Lub hav zoov ntawm cov chav kawm siv nyob rau hauv piv txwv li, catch, typehints thiab lwm yam lus constructs.
- Lub hav zoov thiab muaj cov txheej txheem thiab kev ua haujlwm hu ua, nrog rau cov lus sib cav dhau los.
- Txheeb xyuas tias txoj kev xa rov qab cov ntaub ntawv nrog tib hom raws li tau hais tseg hauv cov lus rov qab.
- Lub hav zoov thiab kev pom ntawm cov khoom tau nkag mus, thiab tshawb xyuas cov ntaub ntawv tshaj tawm thiab cov ntaub ntawv tiag tiag siv hauv cov khoom.
- Tus naj npawb ntawm cov tsis dhau mus rau sprintf / printf hu hauv txoj hlua formatting thaiv yog qhov tseeb.
- Lub hav zoov ntawm variables noj mus rau hauv tus account blocks tsim los ntawm branching tswv thiab loops.
- Kev siv yam tsis muaj txiaj ntsig (piv txwv li "(txoj hlua) 'foo'") thiab kev sim nruj ("===" thiab "!==") ntawm cov ntaub ntawv nrog ntau hom thiab operands uas ib txwm rov qab tsis tseeb.
Cov kev hloov tshiab tseem ceeb hauv PHPStan 1.0:
- Cov qib "9" kuaj tau raug siv, uas kuaj xyuas kev siv hom "sib xyaw", npaj rau kev teeb tsa lub luag haujlwm txais tos ntawm cov tsis muaj ntau hom. Qib XNUMX qhia txog kev siv tsis zoo ntawm "sib xyaw", xws li dhau qhov txiaj ntsig ntawm hom "sib xyaw" mus rau lwm hom, hu rau cov txheej txheem ntawm hom "sib xyaw", thiab nkag mus rau nws cov khoom vim lawv yuav tsis muaj nyob.
- Tswj xyuas seb cov nqi xa rov qab zoo li cas rau kev hu xov tooj zoo ib yam siv @phpstan-pure thiab @phpstan-impure annotations.
- Hom kev tsom xam hauv sim-catch-thaum kawg tsim siv @throws annotations.
- Kev txheeb xyuas cov ntsiab lus tab sis tsis siv sab hauv (private) cov khoom, txoj hauv kev thiab qhov tsis tu ncua.
- Dhau incompatible callbacks rau array muaj nuj nqi xws li array_map thiab usort.
- Hom kev tshuaj xyuas rau cov ntawv nyeem uas ploj lawm.
- Ua hom ntawv tshaj tawm tau sib xws nrog PHPDocs, tso cai rau hom los ntawm cov lus yuam kev los siv hauv PHPDocs.
Tau qhov twg los: opennet.ru