Как настроить работу функции exec в windows

Если функция exec возвращает ошибку при выполнении консольной команды, которая успешно работает в cmd.exe, то нужно проверить переменную окружения PATH, которая используется в php. И если в PATH нет пути к необходимой команде, то нужно добавить его.

Например, если не работает команда git, и в getenv('PATH') нет пути к ней, то нужно добавить путь в PATH:

Прямо в скрипте:

$envPath = getenv('PATH');
$envPath .= ';c:\Program Files\Git\bin';
putenv('PATH=' . $envPath);

Либо в файле php.ini в директиве include_path.