完全に台無しにした後、PHP MACの設定でSOAPモジュールが動作するようにします(-bash:/ usr/bin/php:そのようなファイルやディレクトリはありません....)MAMPを使用する必要がありますが、パスを入力するたびに
Applications/MAMP/bin/php5.3/bin/php to do command line.
MACのパス全体ではなくphpと入力する方法?私は再確認しましたが、.profile
またはbash_profile
という名前のファイルがありません
ありがとう
PS:出力はecho $ PATHです:
echo $PATH
/Applications/MAMP/Library/bin/:/Applications/MAMP/bin/php5/bin/:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin
MAMP構成(PHPセクション)を保存するたびに、現在のバージョンのPHP on ~/.profile
ファイルに保存し、現在の構成を指すようにphp、pear、peclのエイリアスを作成します(注:MAMPの[このバージョンをコマンドラインで使用可能にする]オプションをチェックする必要があります)
ただし、このファイルを更新するには、端末を更新する(別のセッションを開く)必要があります。 source ~/.profile
と入力して、エイリアスを手動で再メッシュすることもできます。
上記のコメントのとおり、PHP_VERSION変数でこの最新バージョンを抽出してさらに使用する場合は、次の操作を実行できます。
export PHP_VERSION=`grep "alias php" ~/.profile | cut -d"/" -f6 | cut -c4-`
そして、現在のバージョンのMAMPで$ PHP_VERSIONが利用可能になります。
最後に、mampで現在設定されているバージョンを使用してphpを実行するにしたい場合は、次の~/.bash_profile
に追加するだけです。
export PHP_VERSION=`grep "alias php" ~/.profile | cut -d"/" -f6 | cut -c4-`
export PHPRC="/Library/Application Support/appsolute/MAMP PRO/conf/" #point to your php.ini folder to use the same php settings
export PATH=/Applications/MAMP/bin/php/php$PHP_VERSION/bin:$PATH
これで、/usr/bin/env php
に依存するスクリプトでさえ、Mamp configから正しいバージョンを読み取ります。
Exmapleのホームフォルダー/Users/David
で、.bash_profile
を作成できます。ここで、変数をエクスポートしてからパスに追加できます。
ファイルを開いてお気に入りのエディターで編集します。vimを使用します。
その後、パスに追加できます
export MAMP_PHP=/Applications/MAMP/bin/php/php5.3.6/bin
export PATH="$MAMP_PHP:$PATH"
システムのPHPが存在する場所である$PATH
を既に含んでいるので、/usr/bin
の少し先にしたいので、システムは常に最初にMAMPバージョンを見つけます。
このファイルを保存してからターミナルを再起動すると、MAMPバージョンを取得する必要があることがわかります。
テストするには、php -v
を使用します。OSXLionは5.3.10を使用し、MAMPは5.3.6を使用しています。
現在のphp実行可能ファイルへのパスを出力するwhich php
を使用してテストすることもできます。
以前に受け入れられた回答がphp 5.3.6を指しているのに対し、MAMPの現在のバージョンは7.2.1をデフォルトとして出荷しているため(2018年初頭)、これはあまり持続可能なソリューションではないことを指摘しています。 .bash_profile
にPHPの最新バージョンを取得し、それをパスにエクスポートするために/Applications/MAMP/bin/php/
に追加の行を追加することにより、パスを自動的に更新できます。以下がその方法です。
# Use MAMP version of PHP
PHP_VERSION=`command ls /Applications/MAMP/bin/php/ | sort -n | tail -1`
export PATH=/Applications/MAMP/bin/php/${PHP_VERSION}/bin:$PATH
(変更を行った後にsource ~/.bash_profile
を使用して、それらが有効になるようにします。)
他の人が述べたように、/Applications/MAMP/Library/bin
にあるMAMPのmysql実行可能ファイルを使用するようにシェルを変更することもできます。しかし、私はnotそのフォルダをエクスポートすることをお勧めします。libtool
のような他の実行可能ファイルがたくさんあるので、システムにインストールされているバージョンよりも優先する必要はありません。 here に記載されているように、この問題により、ノードパッケージ(libxmljs)を最近インストールできませんでした。
私の解決策は、mysql
およびmysqladmin
を関数として定義およびエクスポートすることでした。
# Export MAMP MySQL executables as functions
# Makes them usable from within Shell scripts (unlike an alias)
mysql() {
/Applications/MAMP/Library/bin/mysql "$@"
}
mysqladmin() {
/Applications/MAMP/Library/bin/mysqladmin "$@"
}
export -f mysql
export -f mysqladmin
エイリアスは子プロセスに渡されないため、または少なくともシェルスクリプトのコンテキストでは渡されないため、エイリアスの代わりに関数を使用しました。私が見つけた唯一の欠点は、which mysql
とwhich mysqladmin
を実行しても何も返されないということです。これは残念です。どのmysqlが使用されているかを確認し、すべてが適切であることを確認する場合は、代わりにmysql --version
を使用します。
注:@julianromeraは、zshは関数のエクスポートをサポートしていないことを指摘しているため、その場合は、alias mysql='/Applications/MAMP/Library/bin/mysql'
などのエイリアスを使用するのが最善です。エイリアスがサブシェルから使用できない場合があることに注意してください(シェルスクリプトの実行時など)。
Mavericks 10.8には.bash_profileがなく、私のパスは/ etc/pathsにあることがわかりました
新しいパス(これがphpのmampまたはbrewインストール)を有効にするには、このパスファイル内のデフォルトの/ usr/bin/phpの上にある必要があります。例えば。
/Applications/MAMP/bin/php/php5.3.6/bin
/usr/bin
変更後、新しいターミナルウィンドウを開き、更新されたパスを指す「どのphp」を実行します
あなたはまだその方法で見つからないmysqlバイナリに遭遇するかもしれません
open terminal, type
touch ~/.bash_profile; open ~/.bash_profile
以下のように編集し、保存して、端末を再起動するか、端末を再起動します
source ~/.bash_profile
ターミナルを再起動せずに新しいPATHを実行するには
上記のDavidYellの投稿のように、次も追加します。さまざまな変数をエクスポートするには、それらをエクスポートしてから、次に示す単一のPATHエクスポートを使用します。
export MAMP_PHP=/Applications/MAMP/bin/php/php5.6.2/bin
export MAMP_BINS=/Applications/MAMP/Library/bin
export USERBINS=~/bins
export PATH="$USERBINS:$MAMP_PHP:$MAMP_BINS:$PATH"
乾杯
入力する必要がある場合
/Applications/MAMP/bin/php5.3/bin/php
コマンドラインで追加します
/Applications/MAMP/bin/php5.3/bin
pATHを使用して、どこからでもphpを呼び出すことができます。
XAMPPユーザーの場合、これを使用できます。
# Use XAMPP version of PHP
export PATH=/Applications/XAMPP/xamppfiles/bin:$PATH
source ~/.bash_profile
そして、あなたはそれをチェックすることができます:
php -v
これは私のために働いた:
Sudo mv /usr/bin/php /usr/bin/~php
Sudo ln -s /Application/XAMPP/xamppfiles/bin/php /usb/bin/php
おそらくコメントするには遅すぎますが、Mac OSXでのXAMPPインストールのphp PATHの設定で問題に遭遇したときに私がしたことはここにあります
export PATH = / path/to/your/php/installation/bin:leave/rest/of/the/stuff/untouched /:$ PATH
説明:端末/ Macは、ユーザーがプログラムを開始したときに、プログラムを見つけることを期待して、[〜#〜] paths [〜#〜]で検索を実行しようとします「ターミナル」から、したがって、ここでのコツは、ユーザーがインストールしたbinフォルダーのPHPのユーザーのバージョンを指すことにより、ユーザーが意図するphpをターミナルに検出させることです。
私のために働いた:)
P.S私はまだ新しいコンピューターの周りで迷子の羊です;)
時々、これを行う方が簡単です:
Sudo ln -s /Applications/MAMP/bin/php/php5.6.10/bin/php /usr/bin/php;
PHP投稿時のMampsバージョンはphp5.6.10
、使用しているバージョンに変更してください。
あなたはジフィーで起きます。
これはnot 2つのiniファイルを管理する必要がある理想的なソリューションですが、mampのphp iniファイルをconfフォルダーからアクティブなphpバージョンにコピーすることで、この問題を回避することができました。 binフォルダー。
[MAMP INSTALL]\conf\[ACTIVE PHP VERSION]\php.ini
コピーする
[MAMP INSTALL]\bin\php\[ACTIVE PHP VERSION]
MAMPの最新バージョン(バージョン5以降)は、コマンドラインでMAMP PHPバージョンを使用できるようにする簡単な方法を提供します。サイドバーメニューで[PHP]を選択し、このバージョンはコマンドラインで利用できます。」簡単です!添付のスクリーンショットをご覧ください:)
現在受け入れられている答えを補完するために、MAMPがデフォルトとしてphp5の最新バージョンを使用すると仮定する場合、中央にgrep 'php5'を追加できます。
PHP_VERSION= `ls /Applications/MAMP/bin/php/ | sort -n | grep 'php5' | tail -1`
また、MAMPのバージョンに関係なく、最新のphp5を取得することが保証されています。