Je suis un PHP développeur} de profession.
J'utilise un ordinateur portable Lenovo Ideapad qui s'exécute sur système d'exploitation Windows 10 Home Single Language 64 bits
J'ai également installé Panneau de configuration XAMPP v3.2.2 à l'emplacement "C:\xampp" pour exécuter les programmes PHP dans un navigateur Web sur ma machine.
Le fichier "php.exe" est présent à l'emplacement "C:\xampp\php".
Le répertoire racine du document pour enregistrer les fichiers PHP se trouve à l'emplacement "C:\xampp\htdocs".
Je peux exécuter les programmes PHP que j'ai créés et enregistrés dans un répertoire C:\xampp\htdocs\html_playground en lançant le logiciel XAMPP (en double-cliquant sur le raccourci XAMPP présent sur mon bureau) et en entrant l'URL d'un fichier programme comme ceci " http: //localhost/html_playground/sample.php " dans la barre d'adresse d'un navigateur .
De cette façon, je peux exécuter les programmes PHP avec précision, mais je veux exécuter le même programme à partir de invite de commande Windows
Pour cela j'ai fait les étapes suivantes:
La nouvelle chaîne finale ressemblait à celle ci-dessous:
% USERPROFILE%\AppData\Local\Microsoft\WindowsApps; C:\xampp\php
Ensuite, au lieu d’afficher la sortie du programme, il a ouvert le même fichier dans Texte sublime (L’éditeur que j’utilise pour écrire le code)
Le fichier sample.php a le suivant PHP code exécutable}:
<?php
echo 'Hello World!';
?>
Pour votre référence, je joins également la capture d'écran de la fenêtre d'invite de commande:
Maintenant ma question est
S'il vous plaît, aidez-moi en répondant à mes questions et en m'aidant à exécuter le programme à partir de l'invite de commande.
Même j’ai essayé de redémarrer le PC et d’exécuter la commande php -v, mais cela n’a pas fonctionné. Voici la capture d'écran de la même chose:
Si vous souhaitez exécuter CLI PHP, je vous suggère fortement d'installer le fichier Vanilla PHP présent sur windows.php.net . Laissez-le s’installer à C:\php
La raison pour laquelle j’ai recommandé cela est que si vous voulez utiliser Composer (et il y a de fortes chances que vous souhaitiez le faire), il le trouvera nativement là.
Maintenant, vous pouvez ouvrir une invite de commande et exécuter des scripts comme suit
C:\php\php.exe C:\path\to\php\script.php
À vos spécificités
Why I'm not able to see the output at command Prompt or a web browser?
Parce que la sortie est envoyée à la ligne de commande. Les requêtes du navigateur sont envoyées via le serveur Web au navigateur.Is it necessary to start the XAMPP server like I normally do to run the program from command Prompt too?
Pour les demandes CLI, non. PHP est un exécutable et peut être exécuté seul. Si vous souhaitez faire des demandes de navigateur, XAMPP doit être en cours d'exécution.Is there really a need to set environment variables? If yes why? If no why?
Pas vraiment. La CLI ne portera attention qu'à php.ini
Les configurations XAMPP sont principalement destinées à Apache.But I'm not understanding the reason why people do insist for running the PHP programs from Command Line
La raison principale est les tâches automatisées. J'ai plusieurs processus au travail que je lance sur un travail cron. Guide pas à pas pour les chemins d'accès variables dans Windows 10
Mise à jour:
Passez à l’étape 4 avec en cliquant à gauche le bouton Démarrer de Windows et tapez immédiatement system env
; la recherche Windows vous suggérera Edit the system environment variables
.
Étape 1: Cliquez avec le bouton droit de la souris sur l'icône de l'ordinateur sur votre bureau et choisissez l'option Propriétés.
Étape 2: / Dans la fenêtre Système, cliquez sur Paramètres système avancés dans le volet de gauche.
Étape 3: / Dans la fenêtre Propriétés système, sélectionnez l'onglet Avancé dans le menu horizontal en haut, puis cliquez sur le bouton Variables d'environnement situé au bas de la fenêtre
Étape 4: / Dans la fenêtre suivante, appelez les variables d'environnement, accédez à la variable système (deuxième grille), recherchez une variable nommée Path et cliquez sur Modifier. Si la variable Path n'est pas présente, cliquez sur New.
Si vous modifiez, ajoutez un point-virgule avant le chemin que vous ajoutez à des variables distinctes.
Étape 5: Obtenez le chemin php où vous avez installé XAMPP. Ajoutez ce chemin à la valeur de la variable dans la petite boîte de dialogue qui s’est affichée.
Étape 6: Appuyez sur OK et fermez toutes les fenêtres.
Étape 7: ouvrez une invite de commande avec cmd.
Étape 8: cd sur votre chemin d'installation/xampp/htdocs
Étape 9: entrez la commande 'php -i | plus'
Étape 10: Il n’ya pas d’étape 10.
Vous pouvez voir la sortie du code php
dans votre recherche via l’utilisation de l’indicateur -S
:
php -S <Host/ip>:<port>
Pour le tester, créez un fichier sample.php
contenant:
<?php
echo "Hello World from built-in PHP server";
?>
et exécutez la commande php -S localhost:8080
à partir de la ligne de commande (n'incluez pas http: //).
Cela démarrera un serveur Web à l'écoute sur le port 8080 en utilisant le répertoire actuel dans lequel vous vous trouvez en tant que racine du document.
Ouvrez le navigateur et accédez à http: // localhost: 8080 . Vous devriez voir votre page "Hello World".
Remarque: Mon hypothèse est que vous êtes dans le répertoire dans lequel sample.php
est présent. Si dans le cas où port:8080
est déjà en cours d'utilisation, vous pouvez utiliser tout autre port tel que 80
, 8000
.
Depuis que vous avez installé XAMPP
, il vous est possible d’exécuter PHP
à partir du Shell fenêtre de XAMPP Control Panel v3.2.2
Dans mon cas de test, j'utilise un petit fichier index.php
dans le répertoire c:\xampp\htdocs\tester
. Le contenu de index.php
est le suivant:
echo "This is output from command line "."\n";
if(!empty($argv)) {
foreach($argv as $key => $arg) {
if($key>0) {
echo "command line argument ".$key ." ". $arg."\n";
}
}
}
Tapez simplement ce qui suit dans la fenêtre de votre ligne de commande.
php C:\xampp\htdocs\tester\index.php var1=1 var2="lorem ipsum..."
Sortie
Ouvrez une invite de commande dans le même répertoire que php.exe et appelez le programme avec l'argument du fichier que vous souhaitez traiter.
C:\xampp\php\php.exe C:\xamp\htdocs\html_playground\test.php
Si test.php contenait: <?php echo "Hello World"; ?>
, la commande Invite générerait «Hello World» et renverrait la saisie standard de l'utilisateur CLI CMD.
La raison pour laquelle votre appel >php
ne fonctionne pas est probablement due à votre variable d'environnement PATH ne contenant pas l'emplacement correct pour PHP, modifiez vos variables système et ajoutez 'C:\xampp\php \;' dans la chaîne PATH. Cela devrait ensuite vous permettre d'appeler php C:\xamp\htdocs\html_playground\test.php
pour le même résultat que ci-dessus.