我试图用作曲家与我WampServer。
我对所有的文件路径C:\wamp64\www
,但是当我运行作曲家它将安装供应商档案和其他东西别的地方。
我甚至不知道在哪里,我无法改变的地方是我的项目的路径。我什么都试过已经和它仍然剂量似乎没有安装该供应商的文件在我的项目文件夹中。
只要你的项目文件夹中运行的作曲家。
说你的项目路径是C:\wamp64\www\project0
。所以,仅仅composer install
文件夹内运行project0
。作曲家将在vendor
文件夹中创建文件夹project0
。此文件夹包含安装libraries
的一些文件夹。
作曲家还生成一个文件composer.lock
。此文件包含安装的存储库的信息。
然后,当你想使用的库,请你的PHP文件中添加以下代码。
require_once "vendor/autoload.php";
这将调用自动加载机,所以您不需要使用require_once
再加载PHP Classess
。刚开始使用Class
关键字调用use
。
use Library0/Class0;
use Library1/Class1;
use Library2/Class2;
我用了不同的方法。我承认,这是肮脏的,我每次切换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
文件夹中。
我不知道是否该海报将读取并投票这个答案。我有这个问题并解决它,我想分享我的研究与其他人。
在Windows中,作曲家需要设置system variable PATH在安装过程中能够正常工作;如果它被安装在全球使用Windows安装程序或locally, following this procedure不要紧
然而,在路径中插入可执行PHP文件位置导致Wampserver的ERROR C:/wamp64 or PHP in path
错误。你可以看到错误消息在任务栏通知区域的图标Wampserver如果你点击。
虽然Wampserver可以照常工作,它可以根据这个问题的答案on the official Wampserver forum最终失败:
Wampserver不创造PATH系统环境变量路径。
Wampserver不使用PATH系统环境变量。
一些内容 - 路径PHP或MySQL的版本 - 因为PHP配置文件(php.ini中)或MySQL(my.ini文件)被首先搜索由PATH环境的内容指示的路径的路径系统环境变量可以创建Wampserver故障被搜查的Apache,PHP或MySQL文件夹之前变量。
这就是为什么,与3.1.3版本,PATH环境变量的内容进行检查,如果有问题,会通知您。
如果您Wamperserver安装受到这个错误已经,然后
www
文件夹中,如果您有Windows 10,跟着前面的步骤,那么你就准备实施我提出解决方案。
我在研究中发现的唯一的解决方案this tutorial by Jeff Geerling解释。我的回答如下本教程中有所松动的方式。
这些都是我的PC的设置时,我开始了这一过程:
虽然Visual Studio中的WSL集成终端并非绝对必要,我有它设置,因为我打算安装和使用作曲家它。
要正常工作,需要作曲家PHP但WSL没有附带安装它。因此,有必要在这个环境来安装PHP。据this answer in AskUbuntu.com,最简单的方法就WSL被添加Ondřej Surý's PPA安装PHP。在Visual Studio代码WSL集成终端,类型:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
在PHP安装正确打字php --version
测试。如果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
,这将是它。
第二个,在我看来一个更好的办法:去Composer download page并获得安装代码:
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 download page,安装代码
将安装程序的每一个版本的改变。
这里最好的做法是直接从下载页面获取安装代码。
我觉得这个方法是一个更好的办法,因为与给定的代码,就可以验证该文件的SHA384,并确保它不被篡改。
如果通过从开发者网站安装代码安装作曲家,为了把该文件插入WSL的全局路径,移动composer.phar
文件与bash命令的/user/bin/local
文件夹:
sudo mv composer.phar /user/bin/local/composer
如果你安装了第一条命令作曲,这最后一步不会是必要的。
要检查软件是否正确安装,集成终端上键入composer
。您应该查看作曲家呼叫选项和可用命令的列表。
请记住,使用Composer,您需要在WSL终端键入的命令。
这答案是非常糟糕的。我已经想通了我自己。我在命令行使用cd命令此文件夹中获得。
所以CMD后,我会键入cd C:\ wamp64 \ WWW \ project0这就是正确回答我的问题。