0

タイトルの言い回しが正しいかどうかは完全にはわかりませんが、私がやろうとしているのは、Lift フレームワーク内から PHP ファイルを実行および実行することです。

私は、サーバー上にある PHP ファイルへの URL クエリを実行するのではなく、Scala/Lift アプリを介して PHP ランタイムを機能させることに興味があります。

ユースケース: アプリを .war ファイルにパッケージ化し、これをクラウド プロバイダー経由でホストしています。コードスニペットを上記のアプリにアップロードすると、phpファイルが実行され、必要なことは何でも実行されます。

私は Bianca に関するさまざまな投稿を見てきましたが、このセットアップを軽く保ち、必要なのは PHP バイナリ自体と小さなコードだけで動作するようにしたいと考えています。

事前に感謝します。詳しく説明する必要がある場合はお知らせください:)

4

2 に答える 2

3

「決して言わないでください。恐れと同じように、制限はしばしば幻想に過ぎないからです。」</p>

- マイケルジョーダン

本当に必要なのは、完全に Java で書かれた、オープン ソース (GPL) で埋め込み可能な完全な PHP 5 実装です!

Caucho の Quercus PHP Java ランタイムはまさにそれであり、外部ライブラリやネイティブ コードなしで Java アプリ内で PHP を実行できます。

以下は、この回答で見つけた Quercus-PHP-in-Java コード サンプルです。

import javax.script.ScriptEngine;
import com.caucho.quercus.script.QuercusScriptEngineFactory;

QuercusScriptEngineFactory factory = new QuercusScriptEngineFactory();
ScriptEngine engine = factory.getScriptEngine();

String phpCode = "<?php $foo = strlen('abc'); print $foo; return 'yikes'; ?>"; //PHP Code as String
Object o = engine.eval(phpCode);
System.out.println(o);

このコードを慣用的な Scala に変換するのは簡単です。明らかに、「phpCode」変数は、外部の PHP ファイルの内容などから構築できます。

乗り方を教えてください;-)

于 2013-04-01T18:37:59.033 に答える
0

これは少し変わった要件ですが、それが必要な場合は、ProcessBuilderを使用して、コマンド ラインからPHP スクリプトを実行し、対話することができます。

于 2013-03-12T13:06:23.683 に答える