ホームページ >バックエンド開発 >PHPチュートリアル >PHPコマンドラインモードの概要

PHPコマンドラインモードの概要

尚
転載
2020-03-12 13:16:592342ブラウズ

PHPコマンドラインモードの概要

php フルセットラインモード、つまり php-cli は、公式ドキュメントでは CLI SAPI (サーバー アプリケーション プログラミング インターフェイス、サーバー アプリケーション プログラミング ポート) と呼ばれています。かなり複雑に聞こえます。実際、この名前は、php がもともとサーバーサイドのスクリプト言語であったという事実に由来しています。

サーバー モードとの違い

サーバー モードには、主に Web サーバー モードと CGI 実行可能プログラムとしての 2 つの動作モードがあります。 apach のモジュール (php5apache2.dll など)。後者は php-cig などの実行可能プログラムとして使用されます。現在の代替品は php-fpm (FastCGI Process Manager) です。

php を参照してください。 -fpm 構成。サーバー上に、内容を含むスクリプト ファイルを置きます:

<?php
phpinfo();
?>

出力:

...
Server API	FPM/FastCGI
Virtual Directory Support	disabled
Configuration File (php.ini) Path	/etc/php7
Loaded Configuration File	/etc/php7/php.ini
Scan this dir for additional .ini files	/etc/php7/conf.d
...

説明 設定ファイルは、/etc/php7/php の /etc/php7/conf.d

です。 ini

cli モード構成ファイルをもう一度確認します。

php -r "phpinfo();"

-r を実行します。これは、完全なセットを実行するために実行することを意味します。出力は次のとおりです:

...
Server API => Command Line Interface
Virtual Directory Support => disabled
Configuration File (php.ini) Path => /etc/php/7.0/cli
Loaded Configuration File => /etc/php/7.0/cli/php.ini
Scan this dir for additional .ini files => /etc/php/7.0/cli/conf.d
Additional .ini files parsed => /etc/php/7.0/cli/conf.d/10-opcache.ini,
...

構成ファイルのパスは次のとおりです。 /etc/php/7.0/cli/php.ini と php-fpm は異なります。

PHP は一時的なサーバー スクリプトとしてのみ使用でき、長期的な作業には使用できない、セキュリティ設定がコマンド ラインに影響するなどの意見をよく聞きますが、これは明らかに間違っています。

その他の違い

cli モードでは、$stderr = fopen('php://stderr', ' w など) の 3 つの定数 STDIN、STDOUT、および STDERR が定義されます。 ');

CLI SAPI は、現在のディレクトリを実行スクリプトが配置されているディレクトリに変更しません。

php をシェル スクリプトとして使用します

php スクリプトをスクリプトなどのシェル スクリプトとして使用するには 2 つの方法があります。
hello.php

<?php
echo "hello world!";
var_dump($argv);
?>

方法 1、php スクリプト パラメーター

~php hello.php -s &#39;me&#39;
hello world
array(3) {
  [0]=>
  string(9) "hello.php"
  [1]=>
  string(2) "-s"
  [2]=>
  string(2) "me"
}

方法 2、# を追加します。 ## php ファイルヘッダー

#!/usr/bin/php

次に chmod u .php.cn/course/list/29/type/2.html


以上がPHPコマンドラインモードの概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。