Назад | Перейти на главную страницу

/ usr / bin / php vs / bin / php vs php в bash

Мы запускаем клиентскую команду php. PHP xx yy zz запустить просто отлично, но не его противоположные части (/ usr / bin / php и / bin / php), которые дают очень странную ошибку.

Я так запутался в строке, учитывая, что:

command -v php || which php || type -p php 

=> / usr / bin / php ((все 3)

whereis php

=> PHP: / usr / bin / php /usr/bin/php7.3 / usr / lib / php / etc / php / usr / include / php / usr / share / php /usr/share/php7.3-xmlrpc /usr/share/php7.3-imap /usr/share/php7.3-opcache /usr/share/php7.3-zip /usr/share/php7.3-curl /usr/share/php7.3-common /usr/share/php7.3-bcmath /usr/share/php7.3-soap /usr/share/php7.2-xml /usr/share/php7.3-gd /usr/share/php7.3-mysql /usr/share/php7.3-mbstring /usr/share/php7.2-common /usr/share/php7.3-json /usr/share/php7.3-xml /usr/share/php7.3-readline /usr/share/man/man1/php.1.gz

type -a php

=> php - это / usr / bin / php

php - это / bin / php

Почему мой скрипт работает с "php", но с / usr / bin / php или / bin / php. Чем они отличаются?

В принципе, есть два способа php установлен в вашей системе Linux. Для apache использовать для веб-сервера. И для cli использовать.

Вы можете проверить веб-версию, используя <?php phpinfo(); ?> функция для веб-страницы.

Для cli вы можете проверить путь и версию, используя which php и php --version респактивно.

Отличие php-cgi и php-cli

PHP CLI - это интерфейс командной строки для PHP (например, для создания автономных приложений). PHP CGI - это общий интерфейс шлюза для PHP (например, для веб-приложений). Источник: https://stackoverflow.com/a/9315749/2107145

Возможно, вы захотите прочитать эту ветку https://stackoverflow.com/a/45493656/2107145 для подробностей обо всех php версия.

Объяснение команд

type: отобразит информацию о команде

which: отобразит двоичный путь данной команды

command: отобразить информацию о команде

whereis: найдет все двоичные файлы данной команды, скажем php

пока все.

Спросите меня, если вам нужно узнать больше.