安装和使用非 Composer Laravel 包

2023-10-14

如果你想在 Laravel 中使用包,你只需在 Composer.json 文件中添加一行即可完成工作。这是因为该包在 packagist.org 中可用,如果您要使用的包是非 Composer Laravel 包怎么办?可能在 git 存储库或私人存储库等上可用。

在这篇文章中,我们将了解如何在 Laravel 项目中安装和使用非 Composer Laravel 包和自定义库。

 

使用 Git 包

为此,我在 GitHub 上搜索了 packagist.org 上没有的软件包,并找到了一个。

我将使用 wesleytodd 的一个名为 UniversalForms 的包。

你可以在这里找到它https://github.com/wesleytodd/Universal-Forms-PHP

要使用该包,请打开composer.json文件并将其添加到require部分,如下所示:


"wesleytodd/universal-forms" : "dev-master"  

然后在 require 部分下,添加一个名为 repositories 的新部分,如下所示:


  "repositories": [
    {
      "type": "vcs",

      "url": "https://github.com/wesleytodd/Universal-Forms-PHP"

    }
  ]  

最后,运行


composer update  

现在,您可以像任何其他 Composer 包一样为该包添加服务提供者。

打开 config/app.php 并将提供程序添加到提供程序的数组中。


'Wesleytodd\UniversalForms\Drivers\Laravel\UniversalFormsServiceProvider',  

您可以像使用任何其他包一样使用该包。

这个技巧最好的一点是,存储库将被像任何 Composer 依赖项一样对待,并将像魔术一样将包放在供应商目录中。

 

使用私有存储库

正如您对 GitHub 存储库所做的那样,您可以对私有存储库执行相同的操作,如下所示:


{
  "require": {
    "likegeeks/my-repo": "dev-master"
  },
  "repositories": [
    {
      "type": "vcs",
      "url":  "git@bitbucket.org:likegeeks/my-repo.git"
    }
  ]
}  

这里唯一的区别是您需要为 git 客户端安装 SSH 密钥。

许多 git 客户端都支持这种技术,例如:

  • Git
  • 颠覆
  • 水银

 

使用 Subversion

如果您使用 Subversion,它没有分支和标签的原生概念,因此 Composer 会假设代码位于


$url/tags  

.

如果您的存储库具有不同的结构,您可以像这样更改这些值:


{
  "repositories": [
    {
      "type": "vcs",
      "url": "http://svn.website.com/projectA/",
      "trunk-path": "MyTrunk",
      "branches-path": "MyBranches",
      "tags-path": "MyTags"
    }
  ]
}  

自动加载自定义类或库

现在您可以在项目中使用非 Composer Laravel 包。

如果你的包甚至不在存储库中,可能是一个包含类的普通 PHP 库,或者如何在你的 Laravel 项目中使用它,该怎么办?

嗯,就是这么简单。首先,创建一个用于存储库的目录,例如 app/libraries。

然后将库文件包含在自动加载部分的类映射下的composer.json文件中,如下所示:


{
  "autoload": {
    "classmap": [
      "app/libraries/myLib.php"
    ]
  }
}  

这将毫无问题地包括您的文件,如果您的库有很多文件怎么办?

太好了,您可以包含目录名称,Composer 将自动加载所有类。

现在您可以导入和使用任何非 Composer Laravel 包。

我希望您觉得这篇文章有用。继续回来。

谢谢。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

安装和使用非 Composer Laravel 包 的相关文章

  • NumPy 数组重塑指南

    The NumPyPython 中的库提供了强大的功能来重塑数组的维度 这就是我们将在本教程中深入探讨的内容 在整个教程中 我们将介绍 NumPy 数组重塑的含义及其重要性 然后再深入研究如何重塑不同维度的数组的细节 在本教程结束时 您将熟
  • Python 分析(检测 CPU 和内存瓶颈)

    您是否一直在代码中处理包含大量数据的数据集 并且一旦执行代码 您就会发现代码需要很长时间才能产生最终输出 嗯 这可能会令人沮丧 您可能使用了正确的语法 并且逻辑也是正确的 然而 该代码会消耗大量 RAM 并且执行时间过长 这时您应该考虑优化
  • 使用 to_json 将 Python Pandas DataFrame 转换为 JSON

    The to json函数在转换时特别有用PandasDataFrame 到 JSON 文件 它允许您转换并返回可编写为 JSON 文件的可序列化对象 该函数具有多个参数 可提供 JSON JavaScript 对象表示法 输出的自定义 其
  • 使用 Pandas loc 按多个条件选择数据

    熊猫优惠洛克财产 一种基于标签的数据选择方法 允许您根据多个条件选择数据 本教程旨在指导您在多种条件下使用 Pandas loc 函数 目录 hide 1 了解多个条件的逻辑运算符 2 使用 AND 运算符 组合条件 3 使用 OR 运算符
  • 使用 Python NLTK 的自然语言处理 (NLP)(简单示例)

    自然语言工具包 NLTK 是一个为符号和自然语言处理任务创建的 Python 库 它有潜力让每个人都可以进行自然语言处理 从英语到任何自然人类语言 目录 hide 1 安装 Python NLTK 2 文本预处理 3 句子和单词标记化
  • 如何在Python中对数字进行四舍五入

    处理数字是编程的重要组成部分 尤其是在科学应用或处理货币价值时 在这里 Python 中对数字进行四舍五入的需求变得至关重要 它允许我们将数字调整到附近的值 通常是为了降低其复杂性或使其达到一定的精度 让我们深入探讨如何在 Python 中
  • 使用 Sed p 命令打印行:综合指南

    The p命令输入sed用于打印当前模式空间 即当前文本行 您可以使用sed命令与p从文件中打印文本行的选项如下 sed n p filename 在本教程中 您将了解使用sed p用于打印文件或数据流中的行的命令 目录 hide 1 打印
  • Python Pandas 教程(数据分析初学者指南)

    Pandas 是一个开源的高性能库 可用于数据分析 机器学习和特征工程等多种用途 Pandas 库是数据科学家武器库中的关键工具之一 它是一个用于数据分析和操作的强大 Python 包 目录 hide 1 Python 熊猫安装 2 Pan
  • Python 中的模运算符 (%)(真实示例)

    Python 模运算符 由百分号 表示 是用于各种算术运算的数学运算符 当您使用模运算符时 它返回两个数字之间除法运算的余数 模运算符的强大功能超出了简单算术的范围 它在 Python 编程中具有广泛的实际用途 我们将在本教程中深入探讨 我
  • Python 新闻:2021 年 6 月以来的新增内容

    目录 埃瓦 乔德洛斯卡 Ewa Jodlowska 辞去 PSF 执行董事职务 PSF 公布董事会选举结果 爵士乐队接受 PSF 财政赞助计划 微软正在招聘人员来帮助加快 Python 速度 PyCon US 2021 视频录制现已推出 P

随机推荐

  • 使用 pdb 进行 Python 调试:总结

    以下是您在本课程中学到的所有命令 p 打印表达式的值 pp 漂亮地打印表达式的值 n 继续执行 直到到达当前函数的下一行或返回 s 执行当前行并在第一个可能的机会处停止 在被调用的函数中或在当前函数中 c 继续执行 只有遇到断点时才停止 u
  • 2021 年 3 月 24 日

    主持人 David Amos 分享了有关 Python 基础知识书籍的一些重大新闻并回答了会员的问题 在这次会议上 我们讨论了 Python 新闻和更新 Python 基础平装本 浅拷贝与深拷贝 和更多 下载 Office Hours Fi
  • 2020 年 10 月 21 日

    本周 主持人大卫 阿莫斯 David Amos 与作家一起加入盖尔 阿恩 耶勒和克里斯托弗 特鲁多庆祝Python 3 9的发布并谈论他们的Python 3 9文章和视频课程 下载 Office Hours Files 2020 10 21
  • 使用 Rich 创建 Python Wordle 克隆(概述)

    在本视频课程中 您将构建自己的Wordle克隆对于终端 自从乔什 沃德尔 Josh Wardle 推出以来沃德尔2021 年 10 月 已有数百万人玩过该游戏 虽然您可以在网络上玩原始游戏 但您将创建您的版本作为命令行应用程序 然后使用丰富
  • 多元多项式回归:代码

    以下是在 Python 中实现多重多项式回归所需的数据 x 0 1 5 1 15 2 25 5 35 11 45 15 55 34 60 35 y 4 5 20 14 32 22 38 43 x np array x y np array
  • 使用 pip 安装软件包(摘要)

    在本视频课程中 您学习了如何使用安装第三方软件包 蟒蛇的包管理器 pip 了解了终端和虚拟环境后 您看到了一些有用的pip命令 包括pip install pip list 和pip uninstall 您还学习了如何声明项目的要求并找到第
  • Python 新闻:2021 年 5 月以来的新增内容

    目录 微软成为 PSF 第三位远见赞助商 Pallets Releases New Major Versions of All Core Projects Flask 获得原生 asyncio 支持 Jinja 改进了异步环境 Click
  • 会话对象

    如果您想在多个请求中保留某些参数 可以使用会话对象 本课程将指导您完成创建新会话对象的过程以及如何使用它
  • 第 25 集:Python 中的数据版本控制和真实的 Python 视频脚本

    第 25 集 Python 中的数据版本控制和真实的 Python 视频脚本 真正的 Python 播客 2020 年 9 月 4 日 1h RSS Apple Podcasts Google Podcasts Spotify More 播
  • 第 44 集:为 PyCascades 2021 创建交互式在线 Python 会议

    第 44 集 为 PyCascades 2021 创建交互式在线 Python 会议 真正的 Python 播客 2021 年 1 月 22 日1小时4分钟 RSS Apple Podcasts Google Podcasts Spotif
  • 测试您的 Python 应用程序

    测试您的 Python 应用程序 学习路径 技能 测试 Python 代码 PyTest Mocking 没有一个开发人员是完美的 我们都会犯错误 如果不加以控制 其中一些错误可能会导致故障或错误 而恢复成本可能非常昂贵 测试您的代码有助于
  • 学习 Python 编程的 11 个初学者技巧

    目录 Make It Stick 提示 1 每天编码 技巧 2 写下来 提示 3 互动 秘诀 4 休息一下 提示 5 成为 Bug 赏金猎人 Make It Collaborative 提示 6 让自己周围都是正在学习的人 秘诀 7 教学
  • Python 对象的浅复制与深复制

    目录 制作浅副本 制作深层副本 复制任意Python对象 3 件事要记住 Python 中的赋值语句不会创建副本对于对象 它们仅将名称绑定到对象 为了不可变的对象 通常没有什么区别 但对于与可变的对象或可变对象的集合 您可能正在寻找一种方法
  • Pythonic 壁纸包

    通过以下方式表达您对 Python 的热爱 The Pythonic Wallpapers Pack 原价 9 99 美元 今日仅需 4 99 美元 使用这些为您的计算机 手机或平板电脑定制的独特壁纸 向世界展示您是 Python 达人 你
  • 理解 Python print() 函数:超越 Hello World

    您可能想知道 为什么要写一个关于简单打印功能的完整教程 但不要被欺骗 谦卑者print 函数虽然使用简单 但却是 Python 工具库中不可或缺的工具 本教程将引导您了解使用print 函数 探索其语法和参数 然后深入研究更高级的主题 您将
  • 在 Python 中删除字符串中标点符号的 5 种方法

    Python 提供了多种删除标点符号的方法 这里的目标是将字符串中的每个标点字符替换为空字符串 让我们为所有示例考虑以下原始字符串 original string Hello World Let s test some punctuatio
  • PyQt5 教程 – Python GUI 编程示例

    PyQt5 是用 Python 构建 GUI 应用程序时最常用的模块之一 这是因为它的简单性 正如您将看到的那样 鼓励开发人员使用 PyQt5 的另一个重要功能是 PyQt5 设计器 它使得在短时间内开发复杂的 GUI 应用程序变得非常容易
  • Python GUI 示例(Tkinter 教程)

    在本教程中 我们将通过使用 Tkinter 包编写一些 Python GUI 示例来学习如何开发图形用户界面 Tkinter 包作为标准包随 Python 一起提供 因此我们不需要安装任何东西即可使用它 Tkinter 包是一个非常强大的包
  • Python 中的凯撒密码(文本加密教程)

    密码学涉及将一条信息 以纯文本形式 加密或编码为一种看起来乱码且在普通语言中毫无意义的形式 此编码消息 也称为密文然后 目标接收者可以使用传达给最终用户的解码技术 通常与私钥一起 将其解码回纯文本 凯撒密码是我们将在本教程中重点介绍的最古老
  • 安装和使用非 Composer Laravel 包

    如果你想在 Laravel 中使用包 你只需在 Composer json 文件中添加一行即可完成工作 这是因为该包在 packagist org 中可用 如果您要使用的包是非 Composer Laravel 包怎么办 可能在 git 存