Heim > Backend-Entwicklung > PHP-Tutorial > Einführung in den PHP-Befehlszeilenmodus

Einführung in den PHP-Befehlszeilenmodus

Freigeben: 2023-04-08 13:08:02
nach vorne
2342 Leute haben es durchsucht

Einführung in den PHP-Befehlszeilenmodus

Der PHP-Vollsatz-Zeilenmodus, nämlich php-cli, wird in der offiziellen Dokumentation als CLI SAPI (Server Application Programming Interface, Server Application Programming Port) bezeichnet. Es klingt kompliziert. Tatsächlich leitet sich dieser Name von der Tatsache ab, dass PHP ursprünglich eine serverseitige Skriptsprache war.

Unterschiede zum Servermodus

Der Servermodus verfügt hauptsächlich über zwei Arbeitsmodi: als Webservermodus oder als ausführbares CGI-Programm. als Modul in Apache (z. B. php5apache2.dll); letzteres als ausführbares Programm, z. B. php-cig. Der aktuelle Ersatz ist php-fpm (FastCGI Process Manager). fpm-Konfiguration. Legen Sie auf dem Server eine Skriptdatei mit dem Inhalt ab:

<?php
phpinfo();
?>
Nach dem Login kopieren

Ausgabe:

...
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
...
Nach dem Login kopieren

Anweisungen: Die Konfigurationsdatei ist /etc/php7/php.ini's /etc/php7/conf.d

Sehen Sie sich die CLI-Modus-Konfigurationsdatei noch einmal an. Führen Sie

php -r "phpinfo();"
Nach dem Login kopieren

-r aus, was bedeutet, dass der vollständige Satz ausgeführt wird:

...
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,
...
Nach dem Login kopieren

Der Pfad der Konfigurationsdatei lautet: / etc/php/7.0 /cli/php.ini und php-fpm sind unterschiedlich.

Ich höre oft Leute sagen, dass PHP nur als temporäres Serverskript und nicht für langfristige Arbeiten verwendet werden kann und dass die Sicherheitskonfiguration Auswirkungen auf die Befehlszeile usw. hat. Das ist offensichtlich falsch.

Andere Unterschiede

Der CLI-Modus definiert drei Konstanten STDIN, STDOUT, STDERR, wie zum Beispiel: $stderr = fopen('php://stderr', ' w' );

CLI SAPI ändert das aktuelle Verzeichnis nicht in das Verzeichnis, in dem sich das Ausführungsskript befindet.

php als Shell-Skript

hat Es gibt zwei Methoden, um das PHP-Skript als Shell-Skript zu verwenden, z. B. Skript:

hello.php

<?php
echo "hello world!";
var_dump($argv);
?>
Nach dem Login kopieren

Methode 1, PHP-Skriptparameter

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

Methode 2, fügen Sie <🎜 hinzu > zum PHP-Datei-Header

#!/usr/bin/php
Nach dem Login kopieren

Dann chmod u+x hello.php

und ./hello.php ausführen

hello world
array(1) {
  [0]=>
  string(11) "./hello.php"
}
Nach dem Login kopieren


Verwandte Empfehlungen:

PHP-Video-Tutorial :

https://www.php.cn/course/list/29/type/2.html

Das obige ist der detaillierte Inhalt vonEinführung in den PHP-Befehlszeilenmodus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage