Code Monkey home page Code Monkey logo

Comments (3)

KuSh avatar KuSh commented on May 25, 2024 1

Reading the rule description in Frédéric Bordage's book, it is specifically targeted to PHP !
The rule should check if a string use double quotes without having variables in it.

The rule has no meanings in JS (doesn't matter) nor Rust / Java (different meaning)

In the future this could also apply to posix shell scripts too

from ecocode.

cyChop avatar cyChop commented on May 25, 2024

Concerning PHP, this might be the opportunity for a PHP-specific rule: don't use double quotes if you don't need the string to be interpreted.
Basically, if a string is interpreted, it will replace variables, beginning with a $ (e.g. "My name is $userName"). If there is no variable, asking PHP to interpret it seems to be redundant. Some checks would be required before deciding to make:

  • Does a similar rule already exist in SonarQube? (a quick lookup through Sonarcloud rules seems to indicate that no, but a more thorough check would be welcome)
  • Is there an optimization mechanism I don't know about that will prevent PHP from needlessly interpreting a String?

from ecocode.

cyChop avatar cyChop commented on May 25, 2024

True, I didn't read the book again. In JS/TS, it's mainly a style issue. In PHP, it does have an impact.

from ecocode.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.