ホームページ  >  記事  >  バックエンド開発  >  Atitit.Execute cmdコマンドラインphp

Atitit.Execute cmdコマンドラインphp

WBOY
WBOYオリジナル
2016-06-23 13:31:08911ブラウズ

Atitit. cmd コマンドライン php を実行します

1. cmd コマンドラインを実行します 1

1.1. スペースの問題 1

1.3.プログラムファイルの読み込みエンコーディング設定 1

1.4. コード化けをエコーする 2

2. exec、システムおよびその他の関数のシステムコマンド呼び出し 2

3. php.ini、セーフモードをオフにする 3

4. 3

1. cmd コマンドラインを実行し、システムコマンドの基礎

1.1. 実際の実行モード

プロセスモニターを確認します。得る。 。

PID: 115372、コマンド ライン: cmd.exe /c "D:workspace 绌狠?AtiBrowexp_receipt.bat"

1.2. スペースの問題

二重引用符の解決策

1.3. 中国語のパスの問題、プログラム ファイルの読み取りエンコーディング設定

default_charset = "utf-8" Php.ini は、post と get のエンコーディングを設定するだけで、PHP ファイルの読み取りエンコーディングを設定することはできません。 。このパラメータをコメントアウトして、ファイル自体のエンコードに基づいて自動的に判断させるのが最善です。そうしないと、出力されるphpの結果は header('Content-Type: text/html;charset=utf8

Author::老Wow's Claw Attilax Ai Long、EMAIL: 1466519819@qq.com

その理由は、PHP ファイル自体がシステム文字セットを使用してエンコードされており、中国語 Windows XP は GB2312 を使用するためです。各ファイル ヘッダーには、次のフィールドがあります。ファイルがどのようにエンコードされているかを示します。

javac を使用して Java ソース ファイルをコンパイルする場合、ソース ファイルが保存されていない場合、コンパイラはデフォルトでシステム エンコードを使用してソース ファイルの内容を読み取ります。システム エンコーディングでは、コマンド javac -encoding で指定できます。特定のエンコーディング

header('Content-Type: text) に設定する必要があります。 /html; charset=gbk');

2. exec、system およびその他の関数はシステム コマンドを呼び出します

これら 2 つはシステム シェル コマンドを呼び出すために使用されます

違い:

はすべての実行結果を返すことができます。 $output 関数 (配列) では、$status は実行のステータスであり、systerm は $output 関数を提供する必要はありません。同様に、$return_var はステータス コードです。 0 は成功です。 1 は失敗です。

実行例:

2. $a = exec("dir",$out) ,$status);

4. print_r($out);

7.

1. 以下は引用内容です:

2. ?>

3. php.ini を開き、セーフモードをオフにします。 = off にしてから、無効な関数のリスト disable_functions = proc_open、popen、exec、system、shell_exec、remove exec を確認します。

4. 参考

php で exec、system およびその他の関数を使用してシステムコマンドを呼び出す.htm

Apache と PHP のデフォルトエンコーディングの問題解決 (詳細な説明)_php追いかけ_Sina Blog.htm

Copyそうだよ免責事項: この記事はブロガーによるオリジナル記事であり、ブロガーの許可なしに転載することはできません。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。