我正在尝试将作曲家与 WampServer 一起使用。
我所有文件的路径都是C:\wamp64\www
,但是当我运行编辑器时,它会在其他地方安装供应商文件和其他内容。
我甚至不知道在哪里,我无法改变我项目所在的路径。 我已经尝试了所有的东西,但似乎还没有在我的项目文件夹中安装供应商文件。
答案 0 :(得分:2)
只需在项目文件夹上运行composer。
假设您的项目路径位于C:\wamp64\www\project0
。因此,只需在composer install
文件夹中运行project0
即可。 Composer将在此vendor
文件夹中创建project0
文件夹。此文件夹包含一些已安装libraries
的文件夹。
Composer还会生成文件composer.lock
。该文件包含已安装库的信息。
然后,当您想使用这些库时,请在您的php文件中添加此代码。
require_once "vendor/autoload.php";
这会调用自动加载器,因此您无需再使用require_once
来加载PHP Classess
。只需使用Class
关键字调用use
。
use Library0/Class0;
use Library1/Class1;
use Library2/Class2;
答案 1 :(得分:1)
我不知道张贴者是否会阅读并投票回答这个答案。我遇到了这个问题并解决了,我想与其他人分享我的研究。
在Windows中,Composer要求将system variable PATH设置为在安装过程中可以正常工作;使用Windows Installer或locally, following this procedure
全局安装都没关系但是,在PATH中插入可执行PHP文件位置会导致Wampserver ERROR C:/wamp64 or PHP in path
出错。如果左键单击任务栏通知区域中的Wampserver图标,则会看到错误消息。
尽管Wampserver可以照常工作,但根据对问题on the official Wampserver forum的回答,它最终可能会失败:
Wampserver不在PATH系统环境变量中创建路径。
Wampserver不使用PATH系统环境变量。
PATH系统环境变量的某些内容-PHP或mysql版本的路径-可能导致Wampserver故障,因为首先在由指示的路径中搜索PHP配置文件(php.ini)或MySQL(my.ini)。在Apache,PHP或MySQL文件夹中搜索PATH环境变量的内容之前,。
这就是为什么在版本3.1.3中检查PATH环境变量的内容并在出现问题时通知您的原因。
如果您的Wamperserver安装已经遇到此错误,则
遵循Wampserver forum的建议
备份www
文件夹中的内容
卸载Wampserver,
重新安装Wampserver。
如果您使用Windows 10并按照前面的步骤进行操作,那么您就可以实施我建议的解决方案了。
我在研究中发现的唯一解决方案在this tutorial by Jeff Geerling中进行了解释。我的回答以某种宽松的方式遵循了本教程。
这些是我开始此过程时PC的设置:
尽管带有WSL集成终端的Visual Studio不是严格必需的,但我已经设置了它,因为我打算与其一起安装和使用Composer。
要正常工作,Composer需要PHP,但未随附WSL。因此,有必要在此环境中安装PHP。根据{{3}},在WSL上安装PHP的最简单方法是添加this answer in AskUbuntu.com。在Visual Studio Code WSL集成终端中,键入:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
使用php --version
测试PHP是否已正确安装。如果PHP安装正确,终端将返回如下消息:
PHP 7.2.10-0ubuntu0.18.04.1 (cli) (built: Sep 13 2018 13:45:02) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.10-0ubuntu0.18.04.1, Copyright (c) 1999-2018, by Zend Technologies
有两种方法可以做到:
一个简单的方法:只需在集成终端sudo apt-get install composer
上键入内容即可。
第二个,我认为是更好的方法:转到Ondřej Surý's PPA并获得安装代码:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
警告:请勿复制/粘贴本教程中提供的代码来安装Composer 。根据{{3}},安装代码
将随安装程序的每个版本而变化。
此处的最佳做法是直接从下载页面获取安装代码。
我认为该方法是一种更好的方法,因为使用给定的代码,可以验证文件的SHA384并确保其未被篡改。
如果通过开发人员网站上的安装代码安装了Composer,则为了将该文件放入WSL的全局路径中,请使用bash命令将composer.phar
文件移动到/user/bin/local
文件夹中:
sudo mv composer.phar /user/bin/local/composer
如果使用第一个命令安装了Composer,则无需执行此最后一步。
要检查软件是否已正确安装,请在集成终端上键入composer
。您应该查看作曲家调用选项和可用命令的列表。
请记住,要使用Composer,您需要在WSL终端中键入命令。
答案 2 :(得分:1)
我使用了不同的方法。我承认它很脏,每次切换PHP版本时,我都需要记住要更新我所做的事情,但是很好……它可以工作:)
转到C:\ProgramData\ComposerSetup\bin
。那里有一个文件:composer.bat
。每次您输入composer install
或composer update
命令时都会执行此操作。使用记事本或任何其他文本编辑器进行编辑。您应该会看到类似这样的内容:
@ECHO OFF
php "%~dp0composer.phar" %*
我们想要做的是给php.exe提供直接路径,因此让我们注释掉当前命令并编写我们自己的命令:
@ECHO OFF
REM php "%~dp0composer.phar" %*
C:\wamp64\bin\php\php5.6.40\php.exe "%~dp0composer.phar" %*
现在一切正常。但是一旦在Wampserver中切换到另一个PHP版本,您也应该更新此文件。
顺便说一句:可以进行类似的更改以使PHP嗅探器或PHPUnit也起作用。他们的蝙蝠文件位于C:\Users\[your windows user]\AppData\Roaming\Composer\vendor\bin
文件夹中。
答案 3 :(得分:1)
尽管这是一个老文章,但就Wampserver而言,它可能很有用,因此最简单的解决方法是:
1)转到wampserver内的“ bin / php”文件夹,通常位于C:\ wampXX \ bin \ php,然后查找wampserver中使用的php版本。您可以导航到http://localhost来找到它,或者单击Windows任务栏上的Wampserver图标(如果没有版本号,请单击PHP-> Version,然后您会看到已选中一个):
2)在“ bin / php”文件夹中,打开与您的PHP相对应的文件夹 版本,在我的情况下为“ 7.0.33”,然后复制以下路径:
3)转到Windows环境变量,然后在“系统变量”中添加复制到Path变量的PHP文件夹路径(您可以在Google上搜索如何在Windows版本上更改Path变量)。
附言:如果您切换PHP版本,它将不再起作用,因此您必须再次执行该操作。但是现在,更改为正确的PHP版本文件夹。
3)之后,转到作曲家网站下载Windows安装程序。
4)将CD插入项目的根目录并运行:
composer install
就是这样。也许需要做很多工作,但最后一切都非常简单。
答案 4 :(得分:0)
答案非常糟糕。我已经把它弄清楚了。我不得不在commend行中使用cd commned进入这个文件夹。
所以在CMD之后我会输入cd C:\ wamp64 \ www \ project0,这是我问题的正确答案。