我试图在Yii2基本安装中运行phpunit
,但每当我从命令行运行php vendor/bin/phpunit
时,我得到以下输出:
注意:我使用的是Windows 7。
dir=$(d=${0%[/'']*}; cd "$d"; cd "../phpunit/phpunit" && pwd)
# See if we are running in Cygwin by checking for cygpath program
if command -v 'cygpath' >/dev/null 2>&1; then
# Cygwin paths start with /cygdrive/ which will break windows PHP,
# so we need to translate the dir path to windows format. However
# we could be using cygwin PHP which does not require this, so we
# test if the path to PHP starts with /cygdrive/ rather than /usr/bin
if [[ $(which php) == /cygdrive/* ]]; then
dir=$(cygpath -m "$dir");
fi
fi
dir=$(echo $dir | sed 's/ /' /g')
"${dir}/phpunit" "$@"
谁能告诉我这里的问题是什么?我以前没有使用过phpunit
,所以不确定发生了什么。
这是一个显而易见的解决方案:
文件vendor/bin/phpunit
不是PHP脚本,而是shell脚本。
删除php
,直接运行vendor/bin/phpunit
。
。
从命令中删除php,我得到'php' is not recognized as an internal or external command
,并使用php打印该文件内的shell脚本您提到的。正如问题中提到的,它只是输出脚本
修复
- 将php添加到path
或
- 对于临时使用,可以尝试这样做:(有利于使用npm或composer)
SET PATH=c:'wamp'bin'php'php5.3.29';%PATH%