Maison  >  Article  >  développement back-end  >  Introduction au mode ligne de commande php

Introduction au mode ligne de commande php

尚
avant
2020-03-12 13:16:592295parcourir

Introduction au mode ligne de commande php

Le mode ligne complet de php, à savoir php-cli, est appelé dans la documentation officielle : CLI SAPI (Server Application Programming Interface, port de programmation d'application serveur). Cela semble compliqué. En fait, ce nom est dérivé du fait que PHP était à l’origine un langage de script côté serveur.

Différences par rapport au mode serveur

Le mode serveur a principalement deux modes de fonctionnement : en mode serveur Web ou en programme exécutable cgi, par exemple. en tant que module dans apach (tel que : php5apache2.dll) ; ce dernier en tant que programme exécutable, tel que php-cig Le remplacement actuel est php-fpm (FastCGI Process Manager

Regardez php -). configuration fpm. Sur le serveur, mettez un fichier script avec le contenu :

<?php
phpinfo();
?>

Sortie :

...
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
...

Instructions : Le fichier de configuration est /etc/php7/php.ini /etc/php7/conf.d

Regardez à nouveau le fichier de configuration du mode cli. Exécutez

php -r "phpinfo();"

-r, ce qui signifie exécuter l'ensemble complet. Le résultat est :

...
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,
...

Le chemin du fichier de configuration est : /. etc/php/7.0 /cli/php.ini et php-fpm sont différents.

J'entends souvent des gens dire que PHP ne peut être utilisé que comme script de serveur temporaire et ne peut pas être utilisé pour un travail à long terme, et que la configuration de la sécurité affectera la ligne de commande, etc.

Autres différences

le mode cli définit trois constantes STDIN, STDOUT, STDERR telles que : $stderr = fopen('php://stderr', 'w'; );

CLI SAPI ne changera pas le répertoire actuel par le répertoire où se trouve le script d'exécution.

php en tant que script shell

a Il existe deux méthodes pour utiliser le script php comme script shell, tel que script :
hello.php

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

Méthode 1, paramètres du script 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"
}

Méthode 2, ajoutez

à l'en-tête du fichier php
#!/usr/bin/php

Puis chmod u+x hello.php
et exécutez ./hello.php

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

Recommandations associées :

Tutoriel vidéo PHP : https://www.php.cn/course/list/29/type/2.html

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer