Dimittis de PHPStan 1.0, static analystorem pro PHP codice

Post sex annos evolutionis, prima stabilis emissio PHPStan 1.0 analysris statice facta est, quae te permittit ut errores in PHP codice invenias sine ea exsecutione et unitas probationibus utens. In codice exertus scriptum est in PHP ac sub licentia MIT distributum.

Analystor 10 gradus reprimendi praebet, in quibus quilibet gradus sequens facultates prioris dilatat et stimulos duriores praebet;

  • Basic compescit, incognitas classes, functiones et modos definiens ($ hoc), variabiles indefinitas, et iniurias numerorum argumentorum transmittens.
  • Distinguendi fortasse indeterminatae variabiles, ignotae methodi magicae et proprietates classium cum __vocatione et __get.
  • Deprehensio methodorum ignotarum in omnibus dictionibus, non circumscripta ad hanc vocat. Reperiens PHPDocs.
  • Reperiens reditus rationes et genera proprietatibus assignans.
  • Basic identificatio codicis "mortui" (nunquam vocatur) est. COGNOSCERE instantia vocat, quae semper falsa reddere, "alias" caudices nunquam ignem, et codicem post reditum.
  • Reperienda genera argumentorum ad methodos et functiones transierunt.
  • Monitum de absentis generis informationes annotationes.
  • Admonitio de speciebus unionis falsae quae collectiones duorum vel plurium generum definiunt.
  • Monitum de modos vocandi ac proprietates accessiones cum speciebus "nullabilibus".
  • Reperiens usum "mixtum" generis.

    Exempla subesse problemata quae identificantur:

    • Exsistentia generum adhibita in instantia, captura, typohinta et alia lingua constructa.
    • De existentia ac promptitudine methodorum ac functionum quae vocantur, tum numerus argumentorum transiit.
    • Reperiens modum quod notitia redit cum eiusdem speciei ac definiti in reditu expressio.
    • De existentia et visibilitate proprietatum cum accessionibus, et inhibitis declaratis et actualibus datarum speciebus adhibitis in proprietatibus.
    • Numerus parametri ad sprintf/printf vocat in chorda formatting clausus recta est.
    • Variationum existentia ratione caudices ab operatoribus et loramenta ramosis formatis.
    • Utile genus emittit (filum) "foo"") et stricte probat ("===" et "!==") in notitia cum diversis generibus et operandis quae semper falsa recurrunt.

    Clavis innovationes in PHPStan 1.0:

    • Gradus "9" perscriptio effecta est, quae usum "mixti" generis coercet, destinatus ad parametri receptionem functionis ordinandi cum diversis speciebus. Planum XNUMX agnoscit tutum usum "mixtum", ut valores transeuntes typo "mixti" ad aliam speciem vocans methodos generis "mixtos", et accessiones suas proprietates quia non sint.
    • Imperium sive reditus valores identificantur ad functionem identicam vocat utentes annotationes @phpstan-puras et @phpstan immundas.
    • Typus analysis in captando-tandem construit utens @ iacit annotationes.
    • Identificatio definitorum, sed insueta interna (privata) proprietatum, rationum et constantium.
    • Transiens callbacks repugnantes ad functiones ordinatas ut array_map et usort.
    • Typus inspectionem pro absentis typehint annotationes.
    • Formae declarationes conformes cum PHPDocs factae sunt, permittens rationes ab errore nuntia in PHPDocs adhibendas esse.

    Source: opennet.ru