Я пишу класс Java. И у меня есть некоторая логика в test.php. Один из методов этого класса Java должен вызывать test.php, так что test.php выполняет некоторые вычисления и возвращает результат вызывающему методу Java. Могу ли я сделать это с чем-то вроде следующего?
Runtime rt = runtime.getRuntime(); process exec = rt.exec(test.php);
Вы должны использовать API сценариев JSR-223. Существует реализация PHP, использующая мост Java / PHP:
http://php-java-bridge.sourceforge.net/pjb/
Еще одна чистая Java: http://www.caucho.com/resin-3.0/quercus/
Я сам этого не использовал. Но продукт Quercus от Caucho использует его, поэтому я подозреваю, что он достаточно зрелый, чтобы делать все, что вам нужно.
Вот некоторые другие ссылки, которые могут вам помочь:
Возможно, вы сможете выполнить php-скрипт таким образом, но это приведет к ожидаемому результату?
Вызов PHP, сделанный таким образом, может работать, но он пропустит любой контекст, который может потребоваться для работы (параметры из запроса, область действия пользователя и т. Д.),
Это работает в противоположном направлении, которое вы описываете, но оно может помочь, поскольку это фактический мост между двумя языками.
http://www.php.net/manual/en/java.examples-basic.php
У PHP на данный момент есть мост Java, но имейте в виду, что он в лучшем случае экспериментальный.
Если у вас установлен php cli, вы можете делать то, что вы написали здесь. Просто запустите файл php с помощью CLI.