laravel + win10下执行exec
php Laravel框架若在liunx系统里可以直接调用php代码修复包codefix的命令:
exec( './vendor/bin/php-cs-fixer fix --dry-run ', $output );
但是放到win10下就不行了
原因是win10系统里需要使用文件的全路径:
加上如下代码:
exec( base_path().'/vendor/bin/php-cs-fixer'.' fix '.$mode.' ', $output );
运行后是:
大舒一口气,终于可以执行了.
但是若果是中文目录并且名称里面有空格特殊的标点符号则又岔批了:
哎呀这么办呀:别急,这个是因为遇到了空格后就报错了,解决方法是加双引号去解析即可.
以下是正确的代码格式: exec( "\"$base_path/vendor/bin/php-cs-fixer\"".' fix '.$mode.' ', $output );