Laravel学习-01预备阶段-02 Composer

Laravel学习-01预备阶段-02 Composer

在上一篇《Laravel学习-01预备阶段-01 PHP 基础》中,我们回顾了 Laravel 开发所需的 PHP 核心语法。本篇聚焦于现代 PHP 开发的基石工具 ------ Composer,并简要说明它在 Laravel 项目中的核心作用。掌握 Composer,是高效使用 Laravel 的第一步。


1. 什么是 Composer?

Composer 是 PHP 的依赖管理工具。它允许你声明项目所依赖的第三方库(包),并自动完成下载、安装、更新和自动加载。

Laravel 本身及其绝大多数功能模块(如数据库、队列、缓存、邮件等)都是通过 Composer 管理的。没有 Composer,就无法使用 Laravel 的生态。


2. 安装 Composer

macOS / Linux

bash 复制代码
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

Windows

前往 getcomposer.org/download/ 下载 Composer-Setup.exe,按向导安装。

安装完成后,在终端执行:

bash 复制代码
composer -V

若显示类似 Composer version 2.x.x,说明安装成功。


3. 配置国内镜像(推荐)

由于网络原因,官方源(packagist.org)在国内访问较慢。建议切换为国内镜像:

bash 复制代码
# 配置阿里云镜像(全局生效)
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

使用 -g 表示全局配置,对所有项目生效。如需恢复官方源,执行:

bash 复制代码
composer config -g --unset repos.packagist

4. Composer 的核心概念

4.1 composer.json

这是项目的"依赖清单",定义了:

  • 项目名称、描述
  • 依赖的包(require
  • 开发依赖(require-dev
  • 自动加载规则(autoload

示例:

json 复制代码
{
    "name": "laravel/laravel",
    "type": "project",
    "require": {
        "php": "^8.2",
        "laravel/framework": "^11.0"
    },
    "autoload": {
        "psr-4": {
            "App\\": "app/"
        }
    }
}

4.2 vendor/ 目录

运行 composer install 后,所有依赖包会被下载到 vendor/ 目录。不要手动修改此目录内容

4.3 composer.lock

锁定当前安装的确切版本号,确保团队成员或生产环境使用完全一致的依赖。应提交到 Git。


5. 常用命令

命令 说明
composer install 根据 composer.lock(或 composer.json)安装依赖
composer update 更新依赖到最新允许版本(会更新 composer.lock
composer require monolog/monolog 安装依赖,并更新 composer.json
composer require --dev phpunit/phpunit 安装开发依赖
composer dump-autoload 重新生成自动加载文件(如新增类后需执行)

Laravel 项目中,通常只需运行一次 composer install 即可完成依赖安装。


6. Composer 与 Laravel 的关系

  • 创建项目

    bash 复制代码
    composer create-project laravel/laravel myapp

    实际是下载 laravel/laravel 包并安装其所有依赖。

  • 扩展功能

    安装如 laravel/sanctum(API 认证)、spatie/laravel-permission(权限管理)等,均通过 composer require 完成。

  • 自动加载

    Composer 根据 psr-4 规则自动生成 vendor/autoload.php,Laravel 入口文件 public/index.php 会引入它,从而无需手动 require 类文件。


7. 验证 Composer 是否正常工作

新建一个测试目录,执行:

bash 复制代码
mkdir test-composer && cd test-composer
composer require monolog/monolog

若成功下载 monolog 并生成 vendor/ 目录,说明 Composer 已配置正确。


小结

Composer 是 Laravel 乃至现代 PHP 开发不可或缺的工具。它解决了依赖管理、版本控制和自动加载三大核心问题。理解 composer.jsonvendor/ 和常用命令,将为你后续学习 Laravel 扫清障碍。

注意:在 Laravel 项目中,所有第三方包都应通过 Composer 安装,切勿手动复制代码!


系列预告

《Laravel学习-01预备阶段-03 Web基础》

相关推荐
凯新生物4 天前
聚乙二醇二生物素,Biotin-PEG-Biotin在生物检测中的应用
scala·bash·laravel·perl
catchadmin5 天前
Laravel + Vue3 前后端分离开源后台管理框架 CatchAdmin v5.0 Beta 发布
php·laravel
pandarking6 天前
[CTF]攻防世界:easy_laravel 学习
java·学习·web安全·laravel·ctf
catchadmin8 天前
告别 Shell 脚本:用 Laravel Envoy 实现干净可复用的部署
php·laravel
JienDa9 天前
JienDa聊PHP:从Laravel到ThinkPHP的现代Web开发实践
前端·php·laravel
catchadmin10 天前
用 Laravel 官方 AI 工具提升开发效率 效率提示数倍
人工智能·php·laravel
JaguarJack11 天前
用 Laravel 官方 AI 工具提升开发效率
php·laravel·服务端
tg-zm88999620 天前
2025返利商城源码/挂机自动收益可二开多语言/自定义返利比例/三级分销理财商城
java·mysql·php·laravel·1024程序员节
luminaryhero20 天前
Laravel学习-01预备阶段-05 命令行
laravel