Webプログラム開発の主な言語としてphpが広く使われています。 R は統計ソフトウェアとして、数理アルゴリズムの実装における操作性が優れています。最近、仕事の都合上、一部の Web アプリケーションデータに対して複雑な数学的計算を実行する必要があります。しかし、PHP 自体はいくつかの数学的アルゴリズムを記述することができますが、数十行のコードの効率性を満たすことはまだ困難です。 Rの関数に相当するもので、研究の結果、PHPのインスタントアクセスでRを呼び出して計算演算を行い、計算結果を直接読み込んでWebページに表示することが可能になりました。一般的な考え方は次のとおりです。

重要な点は、php が R プログラムを起動して実行し、計算パラメーターを R に渡し、結果を取得することです。

PHP で R をアクティブにするには、組み込み関数 exec を使用します。これにより、オペレーティング システムの実行ウィンドウで実行されるコマンドをここで実行できます (以下は Windows 環境を指します)。

"D:\\Program Files\R\R-2.15.2\bin\x64\R.exe" --vanilla < D:\\test.R  out.txt

最初の部分はローカル R プログラムのパスで、次にカスタマイズ可能な R ソフトウェアのオプション、その後に重要な実行対象の R プログラム ファイルが続き、最後に出力ファイルが実行されます。このファイルはコマンドに必要ですが、私たちにとっては役に立ちません。

PHP ページへの各訪問を実現するには、異なるパラメータにより異なる R プログラムが実行されるため、訪問ごとに一意の R プログラム ファイルが存在するように、プログラム ファイル名 test.R を生成する必要があります。パラメータ名とパラメータ値を保存するテキスト ファイルを記述する形式を使用し、結果ファイル名を指定し、PHP ページで R ファイルの起動を指定します。このファイルには、呼び出しを行う R プログラム ファイルを指定できます。複雑な固定ファイル名。実行後、一意の結果テキスト ファイルが作成され、php ファイルはそのテキスト ファイルの結果を読み取り、処理して表示します。つまり、目的は達成されます。

exec($command,$out1,$out2);

php の出力結果では、$out2 の値が 0 であれば実行は成功です。

ファイル パスで使用されるバックスラッシュは、PHP のバックスラッシュの特別なエスケープ記号であることに注意してください。$command を生成するときは、出力文字列が要件を満たしているかどうかに特に注意する必要があります。また、ファイルの保存には絶対パスを使用するようにしてください。


返信を残す