• DocumentCode
    3723018
  • Title

    Variable Feature Usage Patterns in PHP (T)

  • Author

    Mark Hills

  • Author_Institution
    East Carolina Univ., Greenville, NC, USA
  • fYear
    2015
  • Firstpage
    563
  • Lastpage
    573
  • Abstract
    PHP allows the names of variables, classes, functions, methods, and properties to be given dynamically, as expressions that, when evaluated, return an identifier as a string. While this provides greater flexibility for programmers, it also makes PHP programs harder to precisely analyze and understand. In this paper we present a number of patterns designed to recognize idiomatic uses of these features that can be statically resolved to a precise set of possible names. We then evaluate these patterns across a corpus of 20 open-source systems totaling more than 3.7 million lines of PHP, showing how often these patterns occur in actual PHP code, demonstrating their effectiveness at statically determining the names that can be used at runtime, and exploring anti-patterns that indicate when the identifier computation is truly dynamic.
  • Keywords
    "Reactive power","Arrays","Runtime","Feature extraction","Pattern recognition","Open source software","Engines"
  • Publisher
    ieee
  • Conference_Titel
    Automated Software Engineering (ASE), 2015 30th IEEE/ACM International Conference on
  • Type

    conf

  • DOI
    10.1109/ASE.2015.72
  • Filename
    7372044