本文目录导读:

使用 Composer 创建项目非常简单,通常有两种主要情况:
- 从现有的包/框架创建项目 (最常用,例如创建 Laravel、Symfony、ThinkPHP 项目)。
- 从零开始初始化一个新的 PHP 项目。
下面是具体的操作步骤和命令:
从现有的包创建项目
这是最常用的场景,用于快速搭建框架或应用的骨架。
语法:
composer create-project [包名] [目标目录] [版本号]
参数解释:
包名:通常是vendor/package-name,laravel/laravel。目标目录(可选):项目存放的文件夹名,如果不指定,则使用包名作为目录。版本号(可选):你想安装的特定版本,如^9.0、dev-master,不指定则默认安装最新稳定版。
创建最新的 Laravel 项目
composer create-project laravel/laravel my-blog
这会在当前目录下创建一个名为 my-blog 的文件夹,并下载 Laravel 框架及其所有依赖。
创建指定版本的 ThinkPHP 项目
composer create-project topthink/think tp-demo 6.0.*
这会创建一个 ThinkPHP 6.0 版本的项目,目录名为 tp-demo。
创建 Symfony 骨架项目
composer create-project symfony/skeleton my-symfony-app
从零开始初始化一个新项目
如果你的项目不需要基于任何现成的框架包,而是想自己从头构建,可以使用 init 命令。
操作步骤:
- 在你的项目目录下(
my-project文件夹)运行:composer init
- Composer 会以交互式问答的形式引导你填写项目信息,包括:
- 项目名称(Package name)
- 描述(Description)
- 作者(Author)
- 最低稳定性(Minimum Stability)
- 依赖:你可以选择手动输入需要的包(如
monolog/monolog),也可以直接回车跳过,后期用require命令添加。 - 开发依赖:测试框架等。
- 问答完成后,Composer 会在当前目录生成一个
composer.json文件。
注意:composer init 只是生成了配置文件,不会自动下载任何代码,你需要手动执行 composer install 来下载刚刚声明的依赖。
核心区别
| 命令 | 用途 | 效果 |
|---|---|---|
composer create-project |
克隆并安装 一个现有的项目模板 | 自动执行 composer install,下载所有依赖,并可能需要执行项目自带的安装脚本。相当于 git clone + composer install。 |
composer init |
创建一个新的 composer.json 文件 |
仅生成配置文件。需要手动 执行 composer install 或 composer require 来下载依赖。 |
常见问题与解决方法
-
提示超时 / 下载慢(国内环境常见):
- 使用国内镜像源可以大幅提升速度。
- 在当前项目下使用:
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ - 或使用腾讯云镜像:
composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer/
-
PHP 版本不兼容:
- Composer 或你要创建的项目对 PHP 版本有最低要求。
- 检查你的 PHP 版本:
php -v - 可以通过指定版本参数来安装兼容的旧版本,
composer create-project laravel/laravel my-app 5.8.*
-
内存不足:
- 可以临时设置内存限制:
COMPOSER_MEMORY_LIMIT=-1 composer create-project ...
- 可以临时设置内存限制:
-
没有 Composer?
- 先全局安装:
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');" && php composer-setup.php && php -r "unlink('composer-setup.php');" && mv composer.phar /usr/local/bin/composer - 提示:Windows 用户建议下载
.exe安装程序。
- 先全局安装:
只要使用 create-project 命令加上你想要的包名(laravel/laravel),Composer 就会自动为你创建好项目文件夹并下载所有依赖。