Передача Params от PHP до версии Powershell

Я пытаюсь написать PHP-скрипт , который позволит мне выбрать несколько файлов для загрузки из заданного местоположения. Я хочу, чтобы мой скрипт передал массив сценарию Powershell, который был написан ранее, и обработчик загрузки Powershell обрабатывает загрузку (в основном, файл php просто должен сообщить файлу powershell, что нужно скачать). Я просмотрел несколько вариантов, и кажется, что exec – это команда, которую я должен использовать для этого (поскольку мне не нужен shell_exec командной строки, мне не нужен shell_exec ).

До сих пор я отключил безопасный режим, чтобы позволить мне использовать эту команду. Я также должен отметить, что файл php будет запущен с сервера, однако файлы powershell находятся на локальном компьютере.

Фрагмент кода, который до сих пор обрабатывал прохождение param, выглядит следующим образом:

 if(isset($_POST['formSubmit'])) { $choosePlugin = $_POST['wpPlugin']; $chooseTheme = $_POST['wpTheme']; if(isset($_POST['wpTheme'])) { echo("<p>You selected: $chooseTheme</p>\n"); exec('powershell.exe C:\Wordpress Setup\setupThemes.ps1 $chooseTheme'); } else { echo("<p>You did not select a theme</p>\n"); } 

Я немного смущен тем, что я должен положить в exec . Когда я запускаю вышеуказанный код, ошибок нет, но ничего не происходит. Я немного новичок в этом, поэтому я приношу свои извинения, если требуется дополнительная информация. Любая помощь приветствуется.

Стараться сделать:

 echo exec('powershell.exe C:\\Wordpress Setup\\setupThemes.ps1 $chooseTheme'); 

для просмотра результатов powershell.exe (помните double \), также помещаем абсолютный путь в exe-файл:

  echo exec('c:\\PATH_TO_POWERSHELL.EXE\\spowershell.exe C:\\Wordpress Setup\\setupThemes.ps1 $chooseTheme'); 

Если вы хотите передать содержимое переменной, вы должны использовать двойные кавычки для фактического расширения. Кроме того, вы должны указать имя сценария, потому что путь содержит пробелы:

 exec("powershell.exe \"C:\Wordpress Setup\setupThemes.ps1\" $chooseTheme");