PHP popen() путь с кавычками

Я пытаюсь запустить exe-файл с помощью функции PHP popen() в Windows. Все идеально, за исключением случаев, когда в моем.exe-файле есть пробелы. Так что это работает:

popen("start /b D:\\test.exe", r);

это не:

popen("start /b D:\\path with space\\test.exe", r);

Обычно в CMD, когда вы хотите это сделать, вы просто помещаете путь в кавычки, такие как: "D:\path with space\test.exe", и это нормально работает с функцией exec(), но не с popen().

Я пробовал:

popen('start /b "D:\\path with space\\test.exe"', r);

но это не работает

У кого-нибудь есть идеи, как это сделать?

1 ответ

Решение

Использовать escapeshellarg() функция для добавления пробелов.

Другие вопросы по тегам