Я использую SublimeText для непрерывного запуска тестов PHPUnit. Работает отлично, но теперь я наткнулся на что-то странное. Я обновил до последней версии PHP через Homebrew, и если я открою сеанс терминала и введите php -v
вот что я получаю:
PHP 5.6.7 (cli) (built: Mar 22 2015 19:03:55)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies
Экземпляр оболочки, который используется SublimeText, похоже, не использует эту версию PHP. Если я сделаю то же самое там (через письмо echo shell_exec('php -v');die();
в тест PHPUnit), я получаю это:
PHP 5.4.24 (cli) (built: Jan 19 2014 21:32:15)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
Я немного протестировал и обнаружил, что automator выдает то же самое, если я запускаю скрипт оболочки в \ bin \ bash shell с помощью действия automator ‘run shell script’.
Как указать / bin / bash использовать только что установленную версию PHP?
Когда вы вводите команду $ php
, PATH
ищется двоичный файл. Вы можете узнать, какой из них будет выполнен с помощью команды $ which php
,
Если вы хотите явно запустить тот или иной двоичный файл php, когда установлено несколько файлов, используйте полный абсолютный путь к двоичному файлу, например, $ /opt/php5.6/bin/php
,
Других решений пока нет …