PHP命令未找到。

11

我尝试按照getcomposer网站上所说的方式通过PHP命令安装composer
但是Bash报了一个错误:

 bash: php: command not found

我在谷歌上进行了搜索,找到了一些答案, 1)将php二进制文件路径添加到$PATH变量中
问题是当我运行以下命令:

 find / -name php -type f

我遇到了这个错误:

find: ‘/run/user/1000/gvfs’: Permission denied

即使使用sudo和root权限

2) 要安装php-cli软件包,所以我运行

 pacman -S php7-cli

但是我收到了这个错误:

error: target not found: php7-cli

那么,对我来说它为什么不起作用?

我通过XAMPP安装程序安装了php,并且我正在使用manjaro操作系统。

2个回答

27
安装XAMPP后,您将获得所有Apache、MySQL和PHP堆栈。问题在于,XAMPP不会将二进制文件链接到您的PATH,因为您可能已经安装了该软件的另一个版本。 Composer需要在您的PATH上可用的PHP版本,所以更容易的方法是链接您已经安装的PHP版本。 我认为您可以在/opt/lamp/bin中找到您的PHP二进制文件,因此您可以通过以下方式进行链接: sudo ln -s /opt/lamp/bin/php /usr/bin/php 希望它有效! 如果您想要双重检查您的PHP二进制文件位置,您可以转到文件,然后在最后找到“其他位置”并单击它,然后去检查它。

2
谢谢,它有效了,只需编辑您的答案,它是lampp而不是lamp,抱歉我不能投票给您,但我会将您的答案标记为已接受。 - Nati V
2
没问题!只需要把“llamp”改成“lamp”就可以了 :) - Isa Souza
我已经安装了Nginx,那么如何解决PHP:command not found的问题? - suresh pareek
2
我已经安装了php72,并通过执行 sudo ln -s /usr/bin/php72 /usr/bin/php 命令使其正常工作。 - Player1

1

您可能混淆了Linux发行版。

我相信php-cli是来自基于Debian的发行版。

如果您正在使用Manjaro,请查看此维基页面以了解如何安装php:

https://wiki.archlinux.org/index.php/PHP

请注意,Arch Linux和Manjaro是滚动发布版本,因此它将安装php7。您在网上找到的许多内容都是针对较低版本的,所以要小心!

我已经通过xampp安装了php,我需要重新安装吗?如果是,我需要删除xampp吗?我还需要安装apache和mysql吗? - Nati V
正如@fedeisas所说,如果您安装xampp,则安装了“包含MySQL、PHP和Perl的Apache发行版”——它专注于Web服务器。因此,在命令行中使用php命令时无法使用。从您的问题中不清楚您为什么需要php composer;“XAMPP不会将二进制文件链接到您的PATH”有其原因,因此,如果您需要在命令行中使用php,应考虑安装php软件包。 - transient_loop

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接