2009-06-05 8 views
31

Ich habe MAMP installiert. Jetzt versuche ich ein Skript über die Befehlszeile auszuführen, aber ich kann es nicht zum Laufen bringen.Wie führe ich ein PHP-Skript über die Kommandozeile mit MAMP aus?

Wie soll ich meine Umgebung einrichten, damit ich ein Skript über die Befehlszeile ausführen und die PHP-Version verwenden kann, die ich mit MAMP installiert habe?

Update: ich mit jjeaton vereinbaren unten, here is a nice solution eines Alias ​​zu MAMP PHP zu erstellen:

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

Jetzt können Sie es von der Befehlszeile verwenden:

$ phpmamp --help 
+2

[Diese Antwort] (http://stackoverflow.com/questions/4262006/how-to-use-mamps-version-of-php-instead-of-the-default-on-osx) hat eine bessere Lösung das wird nicht mit Ihrer php-installation auf Lager gehen. – jjeaton

+0

Vergessen Sie nicht, Folgendes einzugeben: source ~/.bash_profile, um Ihr Bash-Profil neu zu laden! – rebe100x

Antwort

26

Bitte beachten Sie, dass sich mit der Version 2.0.5 von MAMP der Pfad geändert hat. Es ist nun eine der folgenden Möglichkeiten:

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

daher der Befehl MAMP-PHP-Befehl sollte wahrscheinlich so aussehen hinzuzufügen:

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

oder so (je nachdem, welche Version von PHP Sie verwenden möchten):

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

Ja, ich denke, dass es hier ist: /Applications/MAMP/bin/php5/bin/php

Sie können entweder /Applications/MAMP/bin/php5/bin/ an der Vorderseite hinzufügen Ihr Weg oder einen Symlink in /usr/bin schaffen (es ist wahrscheinlich eine dort bereits für die Standard-PHP-Installation)

+0

also würde die PHP CLI in/Applications/MAMP/bin/php5/bin/php eingebaut werden, weil ich nichts über PHP CLI in/Anwendungen/MAMP/bin/php5/bin sehe – Andrew

+0

Ich dachte, dass die PHP-Binärdatei war da drin, aber vielleicht auch nicht. Es wird nur 'php' genannt. Ich werde später auf meinen Mac schauen. –

8

Führen Sie dies in Ihrem Terminal:

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

den Trick tun soll. Es wird - wie Tom Haigh erwähnt hat - dem Pfad die ausführbare Datei MAMP PHP hinzufügen, so dass Sie "php" anstelle des vollständigen Pfades verwenden können.

+0

Was kann ich tun, um zu überprüfen, ob es richtig funktioniert? – Andrew

+1

php -i | grep php.ini - das sollte dir den MAMP php ini-Speicherort geben, wenn es richtig funktioniert, anstatt/etc –

+1

Andrew, du kannst "which php" verwenden, um den Pfad der PHP-Programmdatei zu erhalten, die der php-Befehl verwendet. – phidah

6

andere Möglichkeit, dass das auch sein mag ein wenig sauberer in Bezug auf PHP-Versionen funktioniert, ist ein Alias ​​in bash-Profil zu erstellen, die auf die spezifischen php binary verweist, die Sie ausführen möchten wHE Sie können Dinge wie Composer oder andere CLI-Tools ausführen. Dies hat den Vorteil, dass einige Probleme mit der Bibliothek und der php.ini config-Kompatibilität mit der installierten Version von php in OSX vermieden werden.

Zum Beispiel, wenn Sie auf php 5.4.1 in MAMP verweisen soll, bearbeiten Sie Ihre .bash_profile Datei in einem Editor der Wahl (nano, vi, etc.):

# nano ~/.bash_profile 

Fügen Sie diese unter Ihrem PATH-Anweisung:

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

Speichern und beenden (STRG + X in Nano,: wq in vi). Terminal beenden Wenn Sie das nächste Mal versuchen, php vom cli aus aufzurufen, verwenden Sie die mit MAMP installierte Version 5.4.10.

Denken Sie daran, diesen Pfad zu aktualisieren, wenn Sie MAMP mit einer neueren Version von PHP aktualisieren.

+0

Müssen Sie Ihre Maschine neu starten, damit dies wirksam wird? –