У меня установлен XAMPP на моем Mac, и я хочу, чтобы PHP в командной строке использовал тот же исполняемый файл, что и XAMPP, поскольку я настроил этот файл php php.ini.
Бинарный файл php, который мне нужен, находится по адресу:
/Applications/XAMPP//xamppfiles/bin/php
Быстрая проверка того, откуда приходит мой CLI php, говорит:
Casey-Flynns-MacBook-Air:~ casey$ whereis php
/usr/bin/php
Я пробовал добавить в свой ~ / .bash_profile следующую строку:
export PATH=/Applications/XAMPP//xamppfiles/bin/:$PATH
И быстрый тест моего $ PATH global говорит:
Casey-Flynns-MacBook-Air:~ casey$ echo $PATH
/Applications/XAMPP//xamppfiles/bin/:/Applications/SenchaSDKTools-2.0.0-Developer-Preview/jsbuilder:/Applications/SenchaSDKTools-2.0.0-Developer-Preview/command:/Applications/SenchaSDKTools-2.0.0-Developer-Preview:/opt/local/bin:/opt/local/sbin:/sw/bin:/sw/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin:/opt/local/bin:/usr/X11R6/bin:/Users/casey/.ec2/bin
Но все же, когда я запускаю php из командной строки, он использует двоичный файл, который мне не нужен. Кто-нибудь знает, что может происходить?
Видеть man whereis
:
The path searched is the string returned by the sysctl(8) utility for the
``user.cs_path'' string.
Что на моей Mac OS X:
$ sysctl user.cs_path
user.cs_path = /usr/bin:/bin:/usr/sbin:/sbin
Скорее использовать which
чтобы проверить, что будет использовать ваша оболочка:
$ echo $PATH
/Users/xyz/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
$ which php
/Users/xyz/bin/php
Тем не менее, я думаю, что иметь две программы с одинаковым именем в вашем $ PATH нехорошо, но я не вижу лучшего решения (я не думаю, что вы можете избавиться от предустановленного php
и удаление /usr/bin
из PATH тоже не очень хорошо ...).