複数のバージョンの PHP がインストールされており、通常の開発では常に自作でインストールされた PHP 5.5.x を使用しています。
魚の殻には
which php & php --version
=> /usr/local/bin/php
=> PHP 5.5.8 (cli) (built: Jan 16 2014 15:58:25)
パスは正しいです。
私の問題は、Drupal で開発する必要があるとき、バンドルされたランプ スタックとして MAMP を使用し、MAMP には独自の php バージョンが含まれていることです。私の問題は、Drupal で Drush を使用する場合、bash で通常行うように PHP 実行可能パスを設定できないことです。バンドルされている PHP バージョン/実行可能ファイルのみを drush で使用したい。
bashでは、これを行うことができます:
# Set Drush root to MAMP PHP
export DRUSH_PHP=/Applications/MAMP/bin/php/php5.5.3/bin/php
しかし、これはフィッシュシェルでは機能しません。私はこれを試しました(成功しませんでした):
魚の設定場所:~/.config/fish/config.fish
set -x DRUSH_PHP=/Applications/MAMP/bin/php/php5.5.3/bin/php
フィッシュシェルを実行すると、drush status
常に次のようになります。
Drupal version : 7.26
Site URI : http://default
Database driver : mysql
Database username : root
Database name : dev-db
Default theme : garland
Administration theme : garland
PHP executable : /usr/local/bin/php
PHP configuration : /usr/local/etc/php/5.5/php.ini
PHP OS : Darwin
Drush version : 6.2.0
Drush configuration :
Drush alias files :
Drupal root : /Applications/MAMP/htdocs/Sandbox/dev
Site path : sites/default
File directory path : sites/default/files
そして、bourne シェルで同じコマンドを実行すると、正しい設定が得られます。
Drupal version : 7.26
Site URI : http://default
Database driver : mysql
Database username : root
Database name : dev-db
Database : Connected
Drupal bootstrap : Successful
Drupal user : Anonymous
Default theme : bartik
Administration theme : seven
PHP executable : /Applications/MAMP/bin/php/php5.5.3/bin/php
PHP configuration : /Applications/MAMP/bin/php/php5.5.3/conf/php.ini
PHP OS : Darwin
Drush version : 6.2.0
Drush configuration :
Drush alias files :
Drupal root : /Applications/MAMP/htdocs/Sandbox/dev
Site path : sites/default
File directory path : sites/default/files
Temporary file directory path : /Applications/MAMP/tmp/php
では、fish で DRUSH_PHP へのエクスポート パスを設定するにはどうすればよいでしょうか。