2

PHPにはCGIスクリプトを呼び出すvirtual()関数があるのを見ましたが、それが最善の方法ですか?そのスクリプトにもパラメータを渡すことはできますか?

file_get_contents()またはinclude()を使用してCGIスクリプトのURLを渡す例をいくつか見ましたが、それはハックのように感じます。

4

2 に答える 2

4

ローカルで呼び出すことができる場合は、exec()を使用します。CGI として呼び出す必要がある場合 (スクリプトは CGI 環境内でのみ動作するように設計されているため)、 include()またはfile_get_contents()を介して呼び出す必要があります。virtual()はバッファをフラッシュし、サブリクエストの出力を追加します。

include()file_get_contents()、およびvirtual()を介してパラメーターを GET パラメーターとして渡すことができます。

http://localhost/cgi-bin/foo?param1=val1&param2=val2

可能であれば、exec()ルートに進みます。他の方法を使用すると、構成の変更が必要になる場合があります。

exec ()を使用する場合、CLI プログラムと同様に引数を渡す必要があります。

foo val1 val2
foo param1=val1 param2=val2

パラメーターを渡す方法は、後で他のプログラム/スクリプトでパラメーターを解析する方法によって異なります。コマンドラインから呼び出した場合と同様に、呼び出されたプログラムに表示されます。

于 2009-02-06T17:32:40.763 に答える
0

PHPページからCGIスクリプトを呼び出すのにも問題がありました。後で、ページ ファイルに .php サフィックスではなく .html サフィックスが付いていることが問題であることに気付きました。それを修正すると、スクリプトが機能するようになりました。これはおそらくあなたの問題ではありませんが、念のため言及したいと思います。

于 2012-03-07T08:52:12.113 に答える