2009-06-05 7 views
31

J'ai installé MAMP. Maintenant, j'essaie d'exécuter un script depuis la ligne de commande, mais je n'arrive pas à le faire fonctionner.Comment exécuter un script PHP à partir de la ligne de commande avec MAMP?

Comment dois-je configurer mon environnement pour pouvoir exécuter un script depuis la ligne de commande et utiliser la version PHP que j'ai installée avec MAMP?

Mise à jour: Je suis d'accord avec jjeaton ci-dessous, here is a nice solution de créer un alias de PHP MAMP:

# add this to your ~/.bash_profile 
alias phpmamp='/Applications/MAMP/bin/php/php5.3.6/bin/php' 

Maintenant, vous pouvez l'utiliser à partir de la ligne de commande:

$ phpmamp --help 
+2

[Cette réponse] (http://stackoverflow.com/questions/4262006/how-to-use-mamps-version-of-php-instead-of-the-default-on-osx) a une meilleure solution cela ne gâchera pas votre installation php stock. – jjeaton

+0

N'oubliez pas d'entrer: source ~/.bash_profile pour recharger votre profil bash! – rebe100x

Répondre

26

Veuillez noter qu'avec la version 2.0.5 de MAMP, le chemin a changé. Il est maintenant l'un des éléments suivants:

/Applications/MAMP/bin/php/php5.2.17/bin/ 
/Applications/MAMP/bin/php/php5.3.6/bin/ 

Par conséquent, la commande pour ajouter la commande php MAMP doit probablement ressembler à ceci:

export PATH=/Applications/MAMP/bin/php/php5.2.17/bin/:$PATH 

ou comme celui-ci (selon la version de PHP que vous voulez utiliser):

export PATH=/Applications/MAMP/bin/php/php5.3.6/bin/:$PATH 
1

Oui, je pense qu'il est ici: /Applications/MAMP/bin/php5/bin/php

Vous pouvez soit ajouter /Applications/MAMP/bin/php5/bin/ à l'avant de votre chemin ou créer un lien symbolique dans /usr/bin (il est probablement l'un déjà là pour l'installation par défaut de PHP)

+0

ainsi que la PHP CLI être intégré dans/Applications/MAMP/bin/php5/bin/php parce que je ne vois rien à propos de PHP CLI dans/Applications/MAMP/bin/php5/bin – Andrew

+0

Je pensais que le binaire PHP était là sur le mien, mais peut-être pas. Cela s'appellera simplement 'php'. Je vais jeter un coup d'oeil sur mon Mac plus tard. –

8

Exécuter dans votre terminal:

export PATH=/Applications/MAMP/bin/php5/bin/:$PATH 

devrait faire l'affaire. Il va - comme Tom Haigh l'a mentionné - ajouter l'exécutable PHP MAMP au chemin afin que vous puissiez utiliser "php" au lieu du chemin complet.

+0

Que puis-je faire pour vérifier si cela fonctionne correctement? – Andrew

+1

php -i | grep php.ini - cela devrait vous donner l'emplacement MIP php ini s'il fonctionne correctement, plutôt que/etc –

+1

Andrew, vous pouvez utiliser "quel php" pour obtenir le chemin de l'exécutable php que la commande PHP utilisera. – phidah

6

une autre façon que les oeuvres peuvent être un peu plus propre en ce qui concerne les versions de PHP est de créer un alias dans votre profil bash qui pointe vers le binaire php spécifique que vous voulez exécuter WHE n vous exécutez des choses comme compositeur ou d'autres outils de cli. Cela a l'avantage d'éviter certains problèmes de compatibilité de configuration de bibliothèque et php.ini avec la version installée de php dans OSX.

Par exemple, si vous voulez pointer vers php 5.4.1 MAMP, modifiez votre fichier .bash_profile dans votre éditeur de choix (nano, vi, etc.):

# nano ~/.bash_profile 

Ajouter ce ci-dessous votre Instruction PATH:

alias php=/Applications/MAMP/bin/php/php5.4.10/bin/php 

Enregistrer et quitter (CTRL + X dans nano,: wq dans vi). Quitter le terminal. La prochaine fois que vous essayerez d'appeler php à partir du cli, vous utiliserez la version 5.4.10 installée avec MAMP. N'oubliez pas de mettre à jour ce chemin si vous mettez à jour MAMP avec une version plus récente de PHP.

+0

Avez-vous besoin de redémarrer votre machine pour que cela prenne effet? –

Questions connexes