当前位置: 首页 > 知识库问答 >
问题:

如何将composer与WampServer一起使用?

令狐运珧
2023-03-14

我正在尝试将composer与我的WampServer一起使用。

我所有文件的路径都是C:\wamp64\www,但当我运行composer时,它会将供应商文件和其他东西安装到其他地方。

我甚至不知道我的项目在哪里,我也不能改变我的项目在哪里的路径。我已经尝试了所有的方法,但它似乎仍然没有在我的项目文件夹中安装供应商文件。

共有3个答案

姜俊民
2023-03-14

我用了不同的方法。我承认这是肮脏的,每次我切换PHP版本,我需要记住更新我做了什么,但好吧。。。有效:)

转到C:\ProgramData\Composer Setup\bin。那里有一个文件:composer。bat。每次输入composer安装composer更新命令时都会执行此操作。用记事本或任何其他文本编辑器编辑它。您应该看到如下内容:

@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也能工作。他们的bat文件在C:\用户\[你的windows用户]\AppData\漫游\作曲家\供应商\bin文件夹中。

吕树
2023-03-14

只需在项目文件夹上运行作曲家。

假设您的项目路径位于C:\wamp64\www\project0。因此,只需在project0文件夹中运行composer安装。Composer将在此project0文件夹中创建vendor文件夹。此文件夹包含已安装的库的一些文件夹

作曲家还生成一个文件composer.lock。此文件包含已安装库的信息。

然后,当你想要使用这些库时,请在你的php文件中添加这个代码。

require_once "vendor/autoload.php";

这将调用autoloader,因此您不再需要使用require\u once来加载PHP Classess。只需使用use关键字调用

use Library0/Class0;
use Library1/Class1;
use Library2/Class2;
仉昱
2023-03-14

虽然这是一篇老文章,但它可能对Wampserver的存在很有用,因此最简单的修复方法是:

  1. 转到wampserver中的“bin/php”文件夹,通常位于C:\wampXX\bin\php,并查找wampserver中使用的php版本。您可以导航到http://localhost要找到它,或者单击Windows任务栏上的Wampserver图标(如果您的任务栏上没有版本号,请单击PHP)-

附言:如果您切换PHP版本,它将不再工作,您必须再次这样做。但是现在,更改为正确的PHP版本文件夹。

完成此操作后,请转到composer站点下载windows安装程序。

将光盘放入项目根目录并运行(其中必须包含composer.json文件):

编写器安装

就这样了。也许很多工作,但最终都很简单。

 类似资料:
  • 我在Ubuntu 14.04中安装了phpbrew以使用PHP5.4。它工作得很好,但当我尝试使用composer时除外,composer会忽略phpbrew并安装与PHP5.5相关的依赖项。 有没有办法强制composer与phpbrew config兼容?我试图在我的作曲家中添加:php:“5.4”。json,但是它说这个要求在我的php版本中是不可能的。

  • 我是Micronaut框架的新手,我正在尝试使用entitymanager创建我的存储库。我这样创建了我的存储库 我使用这个类实现接口并注入entitymanager 问题是我一直有这个错误: PS:我已经启用了注释处理

  • API level 28和Google建议使用registerNetworkCallback(NetworkRequest,PendingIntent)不推荐CONNECTIVITY\u操作。 我尝试使用ConnectionManager注册了registerNetworkCallback。NetworkCallback和它的工作,但我想使用PendingContent。 让我困惑的是公共空寄存器

  • 问题内容: 当我尝试将Webpack与简单的Express服务器一起使用时,总是会收到大量错误消息: express.js 我得到所有这些错误: 这是我的配置文件: 我该怎么办,我还需要在服务器端使用webpack。 我像这样运行express.js文件: 问题答案: 我最终要做的是,我使用了两种不同的配置,一种用于使用webpack将服务器内容打包在一起,另一种用于将所有浏览器内容打包在一起,并

  • 我有两个多对多关系的实体。 在类角色中: java.lang.StackOverflowError:空 我该如何解决这个问题?我在Stackoverflow上看到了类似的问题,但我没有找到真正有效的解决方案。 Upd:抛出异常的位置:

  • 我真的不明白我应该从< code>trackBy返回什么。根据我在网上看到的一些例子,我应该返回对象的一些属性值。对不对?为什么我应该获取< code>index作为参数? 例如在以下情况下: 组件.组件. ts 组件.模板.html 尽管名称未更改,此模板中显示的对象仍会更新。为什么?