Ответы:
Если вы используете PHP CLI, попробуйте использовать эти команды оболочки (я предполагаю, что вы используете Linux здесь)
which php - will locate the php executable (this should be the default php used by you)
whereis php - The first path displayed will be the location of the php executable
echo $PATH - will print a list of paths separated by ":" where the system looks for commands
Если вы используете PHP в качестве модуля Apache, то phpinfo () сообщит вам об используемой версии php и файлах конфигурации php, а не пути php . Если у вас есть 2 версии исполняемого файла php, то это поможет вам. Если это одна и та же версия, то не имеет значения, кто есть кто :)
Если вы хотите узнать версию php, то php -v напечатает версию php в CLI и всех установленных модулях Zend.
Если вы хотите узнать, какие ini-файлы включены, то php --ini отобразит список ini-файлов, загруженных модулем php (это относится к версии CLI).
which; используйте command -vвместо этого. Также см. Проверка, существует ли программа из скрипта Bash .
Просто добавьте простой скрипт
<?php phpinfo(); ?>
Предполагая, что вы используете через веб-сервер:
вы можете поместить в скрипт следующую функцию:
<?php
phpinfo();
?>
Если это не работает, это может быть потому, что эта функция отключена в php.ini. Это часто делается для безопасности. Если это так, у вас в php.ini будет строка вроде:
disable_functions = phpinfo
Если это так, временно измените его на
disable_functions =
Если вы используете php для сценариев оболочки:
Наверху должна быть «линия Шебанга», что-то вроде
#! / usr / local / bin / php -q
Вы уверены, что одно не является символической ссылкой на другое? делать
ls -l / usr / local / bin / php
Не ;-)
Также из командной строки:
$ php -v
PHP 5.2.6-3ubuntu4 с Suhosin-Patch 0.9.6.2 (cli) (сборка: 31 марта 2009 г. 02:11:31) Copyright (c) 1997-2008 PHP Group Zend Engine v2.2.0, Copyright (c) 1998- 2008 Zend Technologies
Если вы говорите о своих веб-скриптах, которые вызываются вашим веб-сервером Apache, а PHP настроен как модуль Apache, то ответ НЕТ.
Местоположения, которые вы упоминаете в своем вопросе, являются интерпретаторами сценариев командной строки, которые будут вызываться с помощью обозначений shebang, таких как
#!/usr/local/bin/php
в верхней части вашего сценария командной строки php
Вы можете позвонить переводчикам, которых вы упомянули отдельно, так как они имеют разные имена
# php
позвонил бы / usr / local / bin / php и
# php5
позвонил бы / usr / local / bin / php5
Ни один из них не используется, если вы используете PHP через модуль Apache. Если вы используете CGI-версию php, она должна появиться в phpinfo (); вывод.
<?php echo shell_exec('which php'); ?>
Это работает, даже если у вас нет доступа к оболочке. ;-)
whichкоманда это то, что мне нужно.