WAMP - проблема PHP shell_exec () - PullRequest
       12

WAMP - проблема PHP shell_exec ()

0 голосов
/ 24 февраля 2009

Я использую WAMP в качестве сервера, и мне нужно выполнить svn, который находится в моем каталоге Windows: C: / Program Files / Subversion / bin /

Проблема в том, что когда я запускаю программу php с сервера, она не выдаст вывод. Он работает из командной строки, что заставляет меня думать, что это проблема с разрешениями в WAMP. Однако после предоставления ему неограниченной мощности он все равно не будет выполнять команды SVN, если я не вызову его из командной строки.

Я попытался вызвать его с полным путем к svn, и это обычный путь. Другие команды, такие как "dir", работают нормально.

Чтобы уточнить мой вопрос: как я могу выполнить SVN из PHP через WAMP?

Ответы [ 3 ]

1 голос
/ 30 сентября 2009

Я тоже нашел эту проблему и могу решить эту проблему, убедитесь, что вы используете имя пользователя и пароль (при необходимости)

например. svn update "\ my \ project \" --username [myusername] --password [mypassword]

Если нет, то ничего не выводится и svn все еще ждет, пока вы введете это.

P.S. Когда я вхожу и запускаю svn на cmd, он не запрашивает имя пользователя и пароль, но когда я запускаю на PHP, он вам нужен. Надеюсь, это решит вашу проблему.

1 голос
/ 24 февраля 2009

PHP имеет целый набор функций, которые явно работают с svn-репозиториями и не требуют использования каких-либо функций типа system ().

Поскольку вы сказали, что не можете использовать различные функции SVN, попробуйте следующее:

<code><?php
    $cmd = 'set PATH';
    echo '<pre>' , shell_exec( $cmd ) , '
'; ?>

Посмотрите, что это возвращает (ищите переменную среды PATH). Посмотрите, что содержит PATH.

Возможно, вам придется добавить папку Subversion в вашу PATH:

<?php
    $cmd = 'set PATH=%PATH%;"C:\Program Files\Subversion\bin\"; svn up';
    shell_exec( $cmd );
?>

Надеюсь, установка PATH решит вашу проблему.

0 голосов
/ 24 февраля 2009

вместо этого используйте бесплатные классы SVN, для них не требуется модуль SVN: http://www.phpclasses.org/browse/package/3427.ht http://code.google.com/p/phpsvnclient/

...