国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

ホームページ php教程 php手冊 exec、system、およびその他の関數(shù)を使用して PHP でシステム コマンドを呼び出す方法 (推奨されず、セキュリティ上の問題が発生する可能性があります)

exec、system、およびその他の関數(shù)を使用して PHP でシステム コマンドを呼び出す方法 (推奨されず、セキュリティ上の問題が発生する可能性があります)

Jun 13, 2016 am 11:58 AM
exec php system いいえ 使用 関數(shù) できる 注文 安全性 に導(dǎo)く 提案 方法 システム 移行 質(zhì)問

PHPの組み込み関數(shù)execやsystemはシステムコマンド(シェルコマンド)を呼び出すことができ、もちろんpassthruやescapeshellcmdなどの関數(shù)もあります。

多くの場合、PHP の exec、system、およびその他の関數(shù)を使用してシステム コマンドを呼び出すと、作業(yè)をより適切かつ迅速に完了できます。たとえば、2 日前に .rar ファイルをバッチ処理していたとき、exec は非常に役に立ちました。

今日は、よく使われる通話システムの機(jī)能を整理し、私の経験を皆さんと共有します。

注: これら 2 つの関數(shù)を使用したい場合は、php.ini のセーフ モードをオフにする必要があります。オフにしないと、セキュリティ上の理由から、php はシステム コマンドの呼び出しを許可しません。

まず、PHP マニュアルでこれら 2 つの関數(shù)の説明を見てください:

exec --- 外部プログラムを?qū)g行します

構(gòu)文: 文字列exec ( string command [, array &output [, int &return_var]] )

説明:

exec() は指定されたコマンド command を?qū)g行しますが、何も出力せず、単にコマンドを受け取ります。コマンドを?qū)g行してコマンドからすべてのデータを取得する必要がある場合は、 passthru() 関數(shù)を使用できます。

引數(shù)配列が指定されている場合、指定された配列にはコマンドによって出力された各行が埋め込まれます。 注: 配列に既に要素が含まれている場合、exec() は後でその要素を配列に追加します。この関數(shù)で要素を追加したくない場合は、配列を exec() に渡す前に unset() を呼び出すことができます。

パラメーター array と return_var が指定されている場合、返されたステータス コマンドはこの変數(shù)に書き込まれます。

注: ユーザー入力からのデータをこの関數(shù)に渡すことを許可する場合は、ユーザーがシステムをだまして任意のコマンドを?qū)g行できないようにする必要があります。

注: この関數(shù)を使用してプログラムを開始し、バックグラウンドで実行中にそのプログラムをそのままにしておく場合は、プログラムの出力がファイルまたは他の出力データ ストリームにリダイレクトされていることを確認(rèn)する必要があります。そうしないと、プログラムの実行が終了するまで PHP がハングします。

system --- 外部プログラムを?qū)g行し、出力を表示します

構(gòu)文: string system ( string command [, int &return_var] )

説明:

System() は、指定されたコマンド command を?qū)g行し、結(jié)果を出力します。パラメータ return_var が指定されている場合、実行されたコマンドのステータス コードがこの変數(shù)に書き込まれます。

注: ユーザー入力からのデータをこの関數(shù)に渡すことを許可する場合は、ユーザーがシステムをだまして任意のコマンドを?qū)g行できないようにする必要があります。

注: この関數(shù)を使用してプログラムを開始し、バックグラウンドで実行中にそのプログラムをそのままにしておく場合は、プログラムの出力がファイルまたは他の出力データ ストリームにリダイレクトされていることを確認(rèn)する必要があります。そうしないと、プログラムの実行が終了するまで PHP がハングします。

PHP がサーバー モジュールとして実行されている場合、system() は各行が出力された後に Web サーバーの出力バッファを自動的にクリアしようとします。

成功した場合はコマンドの最後の行を返し、失敗した場合は false を返します。

コマンドを?qū)g行して、コマンドからすべてのデータを取得する必要がある場合は、 passthru() 関數(shù)を使用できます。

どちらもシステム シェル コマンド

を呼び出すために使用されます。 違い:

exec はすべての実行結(jié)果を $output 関數(shù) (配列) に返すことができ、$status は実行のステータス、0 は成功、1 は失敗

システムは $output 関數(shù)を提供する必要はなく、結(jié)果を直接返します。同様に、$return_var は実行のステータス コードで、0 は成功です。 1 は失敗です

実行例:

コードをコピー コードは次のとおりです:


< ?php
$a = exec("dir",$out,$status);
print_r($out); print_r($status);
?>


システムの例:

コードをコピーします。コードは次のとおりです。 $a = system("dir",$out);

print_r($a); out);

?>



system、exce、および passthru の違い

system() は、シェル結(jié)果の最後の行を出力して返します。

exec() は結(jié)果を出力せず、シェル結(jié)果の最後の行を返します。すべての結(jié)果は返された配列に保存できます。
passthru()はコマンドを呼び出すだけで、コマンドの実行結(jié)果をそのまま標(biāo)準(zhǔn)出力裝置に直接出力します。 同じ點(diǎn): コマンド実行のステータスコードを取得できます
このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

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

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國語版

SublimeText3 中國語版

中國語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

コメントする理由:PHPガイド コメントする理由:PHPガイド Jul 15, 2025 am 02:48 AM

phphastthreecommentStyles://,#forsingle-lineand/.../formulti-line.usecommentstoexplainwhycodeexists、whatittodo/fixmeitemsanddisablecodecodemcodecodecodecodemprianydedebugging.avoidoversingingsingingsingingsingingsingingsingingsingingsimmentingsimmentingsimplelatic.decratecentecentic.

WindowsにPHPをインストールする方法 WindowsにPHPをインストールする方法 Jul 15, 2025 am 02:46 AM

WindowsにPHPをインストールするための重要な手順には次のものがあります。1。適切なPHPバージョンをダウンロードして解凍します。 apacheでthreadsafeバージョンまたはnginxを使用して非threadsafeバージョンを使用することをお勧めします。 2。php.iniファイルを構(gòu)成し、php.ini-developmentまたはphp.ini-productionにphp.iniに名前を変更します。 3.コマンドラインの使用のために、システム環(huán)境変數(shù)パスにPHPパスを追加します。 4. PHPが正常にインストールされているかどうかをテストするには、コマンドラインを介してPHP-Vを?qū)g行し、組み込みサーバーを?qū)g行して解析機(jī)能をテストします。 5.Apacheを使用する場合、httpd.confでPを構(gòu)成する必要があります

PHP構(gòu)文:基本 PHP構(gòu)文:基本 Jul 15, 2025 am 02:46 AM

PHPの基本的な構(gòu)文には4つのキーポイントが含まれています。1。PHPタグを終了する必要があり、完全なタグの使用が推奨されます。 2。エコーと印刷は、一般的に出力コンテンツに使用されます。その中には、エコーは複數(shù)のパラメーターをサポートし、より効率的です。 3。注釈方法には、コードの読みやすさを改善するための//、#、//が含まれます。 4.各ステートメントはセミコロンで終了する必要があり、スペースとラインブレークは実行に影響を與えず、読みやすさに影響します。これらの基本的なルールを習(xí)得すると、明確で安定したPHPコードの作成に役立ちます。

Python他の例 Python他の例 Jul 15, 2025 am 02:55 AM

PythonのIfelseステートメントを書くための鍵は、論理構(gòu)造と詳細(xì)を理解することです。 1.インフラストラクチャは、條件が確立されている場合、コードを?qū)g行することです。 2.多條件判斷はElifで実施され、順次実行され、満たされると停止します。 3。ネストされている場合、さらに區(qū)畫の判斷に使用されている場合、2つの層を超えないことをお勧めします。 4.単純なシナリオでは、単純なifelseを置き換えるために、三元式を使用できます。インデント、條件付き順序、論理的完全性に注意を払うことによってのみ、明確で安定した判斷コードを書くことができます。

PHP 8インストールガイド PHP 8インストールガイド Jul 16, 2025 am 03:41 AM

ubuntuにphp8をインストールする手順は次のとおりです。1。ソフトウェアパッケージリストを更新します。 2。PHP8および基本コンポーネントをインストールします。 3.バージョンを確認(rèn)して、インストールが成功していることを確認(rèn)します。 4.必要に応じて追加のモジュールをインストールします。 Windowsユーザーは、ZIPパッケージをダウンロードおよび解凍し、構(gòu)成ファイルを変更し、拡張機(jī)能を有効にし、環(huán)境変數(shù)へのパスを追加できます。 MacOSユーザーは、HomeBrewを使用してインストールし、TAPの追加、PHP8のインストール、デフォルトバージョンの設(shè)定、バージョンの検証などの手順を?qū)g行することをお勧めします。インストール方法は異なるシステムで異なりますが、プロセスは明確であるため、目的に応じて適切な方法を選択できます。

PHPとは何ですか?それは何に使用されますか? PHPとは何ですか?それは何に使用されますか? Jul 16, 2025 am 03:45 AM

phpisaserver-sidesscriptinglanguageUsedforwebdevelopment、特にfordynamicwebsitesandcmsplatformslikewordpress.itrunsontheserver、processesdata、interactswithdatabases、andsendshtmltobrowsers.commonusesincludeurauthingication、e-commerceplatoblatoblotoftoflotfontiblotionforthentication

最初のPHPスクリプト:実用的な紹介 最初のPHPスクリプト:実用的な紹介 Jul 16, 2025 am 03:42 AM

最初のPHPスクリプトの書き始め方法は?まず、ローカル開発環(huán)境をセットアップし、XAMPP/MAMP/LAMPをインストールし、テキストエディターを使用してサーバーの実行原則を理解します。第二に、hello.phpというファイルを作成し、基本コードを入力してテストを?qū)g行します。第三に、PHPとHTMLを使用して動的なコンテンツ出力を?qū)g現(xiàn)することを?qū)Wびます。最後に、セミコロンの欠落、引用の問題、ファイル拡張エラーなどの一般的なエラーに注意し、デバッグのエラーレポートを有効にします。

PHPでファイル操作(読書/執(zhí)筆)をどのように処理しますか? PHPでファイル操作(読書/執(zhí)筆)をどのように処理しますか? Jul 16, 2025 am 03:48 AM

tohandlefileoperationsinphp、useappurcefunctionsandmodes.1.toreadafile、usefile_get_contents()forsmallfilesorfgets()inaloop forline-llineprocessing.2.towritetoafile、usefile_put_contents()forsimplewritesorappending withthefile_appendflag、orfwrite()w

See all articles