2012-05-11 2 views
11

Я полностью потерялся здесь и собираюсь стереть мой жесткий диск и начать с новой установки ОС. Я пытался в течение двух дней создать новое приложение yii в терминале и, наконец, понял, что терминал или командная строка не могут даже выполнить PHP внезапно. У меня не было проблем с созданием исполняемого php из командной строки, но теперь он не работает. Когда я печатаю , который php ничего не получаю. Когда я печатаю PHP -v я получаю:Как заставить PHP работать снова в командной строке?

-bash: php: command not found. 

И когда я пытаюсь создать новое приложение Yii я получаю:

env: php: No such file or directory 

Я использую Mac OSX-лев и мой путь выглядит это на данный момент:

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/git/bin 

Я пробовал просмотреть руководство по php, и я никуда не уйду. Как я могу перенастроить командную строку для выполнения php? Любая помощь приветствуется.

+0

Не уверен, что ваш дистрибутив, но вы можете проверить, установлен ли пакет PHP? – Philippe

+2

Я предполагаю, что у вас может не быть php в переменной PATH. В Linux Mint php был установлен в/usr/bin /. Попробуйте/usr/bin/php -v и посмотрите, работает ли это. Если да, следуйте одному из предложений ответов ниже. – EmmanuelG

+0

@EmmanuelG Я пробовал это, и я получаю Нет такого файла или каталога. Я не могу найти его нигде, и я начинаю задумываться, даже если он уже установлен. – MikeTheCoder

ответ

19

Надеюсь, это сэкономит кому-то много головной боли. Если по какой-либо причине вы не можете найти php в своей командной строке и не можете выполнить php из командной строки, ниже приведен список шагов, чтобы снова запустить PHP и запустить его.

  1. двойная проверка, чтобы убедиться, что PHP не где можно найти, открыв терминал и набрав find /usr -name php и нажмите клавишу ВВОД. Главное, что вы хотите найти здесь, это путь с /bin/php на конец. В моем случае это, теперь, когда я его установил, это /usr/local/php5-20120508-102213/bin/php. Если вы не видите ничего подобного, переходите к следующему шагу. Если вы видите что-то подобное, то обратите внимание на этот путь с /bin/php в конце, и перейдите к шагу 4.

  2. Перейти к терминалу и типа в curl -s http://php-osx.liip.ch/install.sh | bash -s 5.4, хит войти. Он попросит пароль. Ваша установка пакета php. После ввода пароля просто выполните действия, подобные любой другой загрузке. Для получения дополнительной информации о этой загрузке вы можете посетить the binary package website.

  3. После того, как вы установили php, откройте терминал и введите find /usr -name php и нажмите enter. Вы должны увидеть несколько строк путей. Обратите внимание на ту, которая имеет /bin/php в конце пути. Вам понадобится этот путь для следующего шага.

  4. Далее, откройте текстовый редактор, для этого я использовал TextWrangler, зайдите в файл в строке меню и выберите «Открыть файл по имени». Затем введите ~/.bash_profile. Выберите Открыть и в конце .bash_profile типа файла в

    PATH=$PATH:/usr/local/php5-20120508-102213/bin/ 
    export PATH 
    

    /usr/local/php5-20120508-102213/bin/ часть того, что путь, который я упомянул сделать примечание, минус PHP в конце. Если ваш путь был другим, замените его. Просто не забывайте оставлять php в конце. сохранить и выйти.

  5. Последний шаг, откройте терминал и введите php -v. Нажмите Enter. Вы должны увидеть что-то вроде:

    PHP 5.4.2 (cli) (built: May 8 2012 09:48:57) 
    Copyright (c) 1997-2012 The PHP Group 
    Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies 
    with Xdebug v2.2.0rc2, Copyright (c) 2002-2012, by Derick Rethans 
    

    Если вы видите, что тогда все работает.

Примечание: Вот хороший ресурс для работы с Command line PHP - находится примерно в 1/3 пути вниз страницы.

+0

на шаге 4: я получил 'Файл не найден (MacOS Код ошибки: -43)' –

+0

Если '.bash_profile' не существует, вы можете добавьте это в '.bashrc' вместо этого, но он будет бесполезно повторно выполняться каждый раз, когда вы запускаете новую оболочку. В качестве альтернативы вы можете создать' .bash_profile', но вы захотите убедиться (в большинстве ситуаций) source .bashrc'. – tripleee

+0

Не нужно «экспортировать PATH», потому что система уже сделала это для вас. – tripleee

5

Здесь происходит одна из двух вещей: вы не устанавливали PHP или не устанавливали PHP, а не на каком-либо из системных путей. Во-первых, я хотел бы попробовать найти PHP и убедитесь, что она существует:

$ find/-name php -type f 

Вы должны увидеть что-то вроде:

/path/to/your/php/bin/php 

Если PHP двоичный существует, проверьте путь:

$ echo $PATH 

Если этого не существует, перекомпилируйте php.

Если PHP существует в вашей системе, убедитесь, что путь к файлу/bin/php включен. Вы можете редактировать ~/.bash_profile и добавить собственный путь:

PATH=$PATH:/path/to/your/php/bin/ 
.... 
export PATH 

Затем сохраните и загрузите файл, чтобы обеспечить ваш текущий сеанс имеет доступ к новому пути изменения:

$ source ~/.bash_profile 

С любым везением вы можете теперь сделайте php -v и посмотрите ответ версии.

- Обновление -

Установка фактического пути:

$ vi ~/.bash_profile 

... 
# Add your custom php path 
PATH=$PATH:/bitnami/mampstack-osx-x86/output/php/bin/ 
.... 
export PATH 

Сохранить и закрыть, то его источником:

$ source ~/.bash_profile 

И теперь вы должны иметь возможность запускать PHP от cli:

$ php -v 
+0

Я думаю, что это должен быть мой путь. Поскольку я говорил drew010, я набрал echo $ PATH в терминале, и у меня появился этот странный путь:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/бен:/USR/местные/мерзавец/бен. И пару дней назад я следовал вместе с учебником о том, как установить грушу и phpunit. В этом уроке я добавил новый путь к моему .bash_profile и с тех пор, подумал об этом, у меня были проблемы. Я уже обрисовал путь, добавленный ранее в .bash_profile. Думаете, это причина? – MikeTheCoder

+1

Вполне возможно. Этот путь, который вы опубликовали, не является необычным, пытались ли вы найти двоичный файл 'php', используя метод' find', который я описал в ответ? Попытайтесь найти его и опубликовать свои выводы. –

+0

Да, я забыл упомянуть об этом. Первые четыре вещи, которые появились, были случайным файлом с разрешенным разрешением в конце. Затем он показал путь к php, который пришел с битнами MAMP stack, wordpress stack и php для рамки zend. После этого больше ничего не было связано с php. просто куча файлов xcode и mailserver. – MikeTheCoder

0

В ответ на @MikeTheCoder, посланной синтаксис экспорта путь не работает для меня, но немного модифицирована один следующий сделал:

export PATH=/usr/local/php5-5.6.27-20161101-100213/bin/:$PATH 

Я использую El Capitan 10.11.6, который по умолчанию к более ранней версии PHP.

0

Закройте SSH туннель и перезапустить снова для PHP получает обратно и проверить $ php --version

Смежные вопросы