PHP_PHP チュートリアルで Web 経由で C/C++ アプリケーションを実行する
1. はじめに 1 if(@$submit) 変数 $submit はデフォルトでは空であるため、最初に else{} 内のコードが実行され、単にブラウザ上にフォームが表示されます。フォームの action 属性は変数 $PHP_SELF に設定されます。つまり、このページはフォームが送信された後に返されます。同時に、フォーム フォームにはテキスト入力バーが含まれており、ユーザーはこれを使用して、C++ プログラムに渡すコマンド ライン パラメーターを入力できます。フォームは以下の通りです:
Unix/Linux についてある程度の知識がある場合は、ほとんどのコンパイラに C コンパイラと C++ コンパイラ (それぞれ GCC と G++) が付属していることを知っているはずです。 Unix では、プログラムのインストールや Make など、さまざまな場所でこれらのコンパイラが使用されます。いくつかのコンソール コマンド、C++ および PHP を使用して、PHP プログラムで実行できる完全な C++ プログラムの例を生成し、対応する出力結果を取得する方法を示します。まず C++ プログラム コードを生成してコンパイルし、次に PHP 関数 passthru を使用してこのプログラムを実行する方法について説明します。ある意味、この記事は、Web ページを通じて一般的なプログラムにアクセスする方法を提供します。
この記事をよりよく理解するには、Apache と最新バージョンの php を実行している UNIX/Linux サーバーが必要です。同時に、C++ および UNIX コンソール コマンドも習得する必要があります。もちろん、PHP プログラミングの経験も必要です。
2番目に、C++プログラムを書きます
たとえば、コマンドラインからパラメータを受け取ることもできる単純なC++プログラムを書き、それにSampleappという名前を付けます。そして、次の方法でそれに3つの異なるパラメータを渡すことができます。 :
Sampleapp ?Parameter one?Parameter two?Parameterthree
このプログラムの機能は、渡されたパラメータの数と各パラメータの値を出力することであり、その後、PHPスクリプトプログラムを使用してコンパイルを実行できますC++ プログラム。
お気に入りのテキスト エディタを使用して、Sampleapp.cpp という名前の新しいファイルを作成し、このファイルに次のコードを入力します。 argv[])
{
cout <
最後に、main 関数はコマンドラインから渡された各パラメーターを出力しますこの関数は、単純な for(;;) ループ文を使用して、パラメーターの数に応じて 1 つずつパラメーター値を出力できます。プログラムに「first」と「second」という 2 つのパラメータを渡すと、for ループで出力される結果は次のようになります。
[1] ?first
[2] ?second
以上がこの C++ の簡単な説明です。プログラムとその関数 cout 関数を使用して、コマンド ラインで渡されたパラメーターを出力画面に表示するだけです。次に、
windows
プラットフォームを使用している場合は、この .cpp ファイルをコンパイルします。ここでは、ほとんどの Unix マシンで提供されている G++ コンパイラを使用して、このソース ファイルをコンパイルします。ただし、マシンに G++ がインストールされていることを確認するには、次のコマンドを入力します。インストールされている場合、Unix シェルは G++ が存在するフルパスを表示します。インストールされていない場合は、「コマンドが見つかりませんでした」というメッセージが表示されます。ここで G++ コマンドを入力します。ソース ファイルが配置されているディレクトリ:
g++ -c sampleapp.cpp.
このコマンドを使用すると、.cpp ファイルをマシン コードを含むターゲット ファイルにコンパイルします。ls?a コマンドを使用すると、それがわかります。新しいファイルsampleapp.oがこのディレクトリに表示されます。これは、.cppソースファイルがマシンコードにコンパイルされた結果です。ただし、次のG++コマンドも入力する必要があるため、最終的に必要なのは実行可能ファイルです。 g++ sampleapp.cpp ?o sampleapp
このように、sampleapp という名前の実行可能ファイルを取得しましたが、Unix での実行可能ファイルにはサフィックスが付いていません
これでプログラムの実行結果を確認できます。以下のコマンドの場合:
sampleapp one -two /three
次の実行結果が確認できます:
You pass 3 argument.
These argument are:
[1] one
[2] ?two
[3] /three
さて、実行可能なC++プログラムです。生成が完了したら、Web ブラウザからこのプログラムにアクセスできる PHP チュートリアル プログラムを生成します。
このニュースには合計
3
ページがあり、現在
実行コマンドを入力してフォームを送信すると、変数 $submit (Go ボタンの名前) に値が取得され、PHP 教科書では if{} の間のコードが実行されます。
if($args == "")gt;引数が入力されていません。
"; else<BR> {<BR> Echo "<h1>SampleApp Result</h1>" ;<br> $command = "/htdocs/sampleapp " .escapeshellcmd($args);<br> passthru($command);<br> }<br> 変数 $args は自動的に生成され、その値はテキスト入力バーから渡されます。フォームフォームの値。情報が入力されない場合、プログラムは単に値が入力されていないことをユーザーに通知します。 <br> <br> ユーザーが空ではない情報を入力すると、プログラムはテキスト フィールドの値、変数 $args を C++ プログラムに渡します。次のコードは C++ プログラムを実行するための実行コマンドです: <br> <br><br> $command = "/htdocs/sampleapp " .ecapeshellcmd($args);<br><br> 関数 eacapeshellcmd は、" などの呼び出しをフィルタリングするセキュリティ チェック ツールとして使用されます。 、「」、「」、「」、およびその他の特殊文字。これにより、一部のユーザーが特定の文字を入力して内部システム コマンドを呼び出すことができなくなります。 <code> <br> 例えば、Formフォームのテキストフィールドに「1 ?two /three」と入力すると、変数$commandの値は、 /htdocs/sampleapp 1 ?two /three<br> <br> ということがわかります。プログラムの定義。sampleapp 絶対パス。この例では、プログラム ファイルは /htdocs ディレクトリにあります。独自のプログラムが配置されているディレクトリに応じて、対応する変更を加えることができます。 <br> <br> passthru($command);<br> <br> 最後に、PHPの関数passthruを使って、変数$commandに含まれるコマンドを実行し、元の実行結果をブラウザに出力します。私のサーバーでは、結果を返す HTML ページは次のとおりです: <br>
w この記事を終える前に、遭遇する可能性のあるいくつかの問題についてお話したいと思います。まず、sampleapp.php チュートリアル プログラムを実行したときに、プログラムからの出力情報が表示されない場合は、セーフ モードがオンになっている可能性があります。その場合、システムは PHP スクリプトによるシステム内部プログラムの実行を許可しません。セーフ モードをオフにする方法については、
の Web ページ http://www.php.net/manual/en/features.safe-mode.php を参照してください。
http://www.bkjia.com/PHPjc/532648.htmlwww.bkjia.com
true
http://www.bkjia.com/PHPjc/532648.html
技術記事
1. はじめに Unix/Linux についてある程度の知識がある場合は、そのほとんどに C コンパイラと C++ コンパイラ、つまりそれぞれ GCC と G++ が付属していることを知っているはずです。 UnixはプログラムのインストールやMake...
など、様々な場所で使われています。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









PHPは、動的なWeb開発およびサーバー側のアプリケーションに使用されるサーバー側のスクリプト言語です。 1.PHPは、編集を必要とせず、迅速な発展に適した解釈言語です。 2。PHPコードはHTMLに組み込まれているため、Webページの開発が簡単になりました。 3。PHPプロセスサーバー側のロジック、HTML出力を生成し、ユーザーの相互作用とデータ処理をサポートします。 4。PHPは、データベースと対話し、プロセスフォームの送信、サーバー側のタスクを実行できます。

PHPは過去数十年にわたってネットワークを形成しており、Web開発において重要な役割を果たし続けます。 1)PHPは1994年に発信され、MySQLとのシームレスな統合により、開発者にとって最初の選択肢となっています。 2)コア関数には、動的なコンテンツの生成とデータベースとの統合が含まれ、ウェブサイトをリアルタイムで更新し、パーソナライズされた方法で表示できるようにします。 3)PHPの幅広いアプリケーションとエコシステムは、長期的な影響を促進していますが、バージョンの更新とセキュリティの課題にも直面しています。 4)PHP7のリリースなど、近年のパフォーマンスの改善により、現代の言語と競合できるようになりました。 5)将来的には、PHPはコンテナ化やマイクロサービスなどの新しい課題に対処する必要がありますが、その柔軟性とアクティブなコミュニティにより適応性があります。

VSコードシステムの要件:オペレーティングシステム:オペレーティングシステム:Windows 10以降、MACOS 10.12以上、Linux Distributionプロセッサ:最小1.6 GHz、推奨2.0 GHz以上のメモリ:最小512 MB、推奨4 GB以上のストレージスペース:最低250 MB以上:その他の要件を推奨:安定ネットワーク接続、XORG/WAYLAND(Linux)

GolangとCにはそれぞれパフォーマンス競争において独自の利点があります。1)Golangは、高い並行性と迅速な発展に適しており、2)Cはより高いパフォーマンスと微細な制御を提供します。選択は、プロジェクトの要件とチームテクノロジースタックに基づいている必要があります。

PHPの中心的な利点には、学習の容易さ、強力なWeb開発サポート、豊富なライブラリとフレームワーク、高性能とスケーラビリティ、クロスプラットフォームの互換性、費用対効果が含まれます。 1)初心者に適した学習と使用が簡単。 2)Webサーバーとの適切な統合および複数のデータベースをサポートします。 3)Laravelなどの強力なフレームワークを持っています。 4)最適化を通じて高性能を達成できます。 5)複数のオペレーティングシステムをサポートします。 6)開発コストを削減するためのオープンソース。

VSコードワンステップ/次のステップショートカットキー使用法:ワンステップ(後方):Windows/Linux:Ctrl←; macOS:CMD←次のステップ(フォワード):Windows/Linux:Ctrl→; macOS:CMD→

Linuxの主な用途には、1。Serverオペレーティングシステム、2。EmbeddedSystem、3。Desktopオペレーティングシステム、4。開発およびテスト環境。 Linuxはこれらの分野で優れており、安定性、セキュリティ、効率的な開発ツールを提供します。

vs中国モードを切り替えるコード:設定インターフェイスを開き(Windows/Linux:Ctrl、MacOS:CMD、)[エディター:言語]設定を検索します。ドロップダウンメニューで[中国語]を選択します。
