What does ( !'which npm' ) mean in a PHP s

2019-02-24 00:22发布

问题:

What does ( !'which npm' ) mean in the following code?

if ( !'which npm' ) {
  die(
        'You need to install NPM!' . PHP_EOL
  );
}

Here is a link to the complete file from GITHUB: WPBP/generator/bin/wpbp-generator

回答1:

It checks whether a hardcoded string is falsey. Which will always be false.

This logic looks a bit meaningless. I suspect the author rather wanted to write:

if (!`which npm`)

The backtick operator executes the command as shell command, which makes a bit more sense.



标签: php npm which