04百融云策略引擎项目laravel实战步完整安装composer及tcpdf依赖库和验证-优雅草卓伊凡

简介: 04百融云策略引擎项目laravel实战步完整安装composer及tcpdf依赖库和验证-优雅草卓伊凡

04百融云策略引擎项目laravel实战步完整安装composer及tcpdf依赖库和验证-优雅草卓伊凡

引言

此前只是把关于如何把查询内容导出pdf库的代码实现了,但是我们并没有完成整个项目,这最后一个步骤就是安装composer再安装tcpdf库,最后修改结构目录实现完整项目功能,查询得到结果导出pdf库,我分两篇才能写完。

实战开始

我卓伊凡将为你提供完整的实现步骤,包括Composer安装、目录结构调整和完整代码实现-优雅草科技理论+商业实战-学习提升·永无止境

完整实现步骤

1. 安装Composer和TCPDF

安装Composer(如果尚未安装)

# 下载Composer安装脚本
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
开始
![](https://doc2.youyacao.com/server/index.php?s=/api/attachment/visitFile&sign=01979c1c1fa11e22106e74f8136cdccf)
这个报错提示是没权限
安装 composer 提示 php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
PHP Warning:  copy(composer-setup.php): failed to open stream: Permission denied in Command line code on line 1
Warning: copy(composer-setup.php): failed to open stream: Permission denied in Command line code on line 1
提示没权限 我们用 管理员权限执行
sudo php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
成功
# 验证安装脚本
php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
# 执行安装
php composer-setup.php
执行安装 又报错没权限
![](https://doc2.youyacao.com/server/index.php?s=/api/attachment/visitFile&sign=6a2dba2436cf8cf1a5fed126234f7149)
那么我们执行
在 Ubuntu 系统中,默认登录的用户通常不是最高权限(root),而是具有 sudo 权限的普通用户。要切换到最高权限身份,可以使用以下方法:
### 1. 切换到 root 用户
如果需要持续执行多个高权限操作,可以直接切换到 root 身份:
```bash
su -

然后输入 root 用户的密码(如果是新系统,可能需要先设置 root 密码)。

3. 如果尚未设置 root 密码(首次使用)

sudo passwd root

按照提示设置 root 密码后,再用 su - 切换。

完成操作后,建议通过 exit 命令退出 root 身份,回到普通用户模式,以提高系统安全性。

所以 其实 Linux 系统 unbunt 比centos 要安全些

删除安装脚本

php -r “unlink(‘composer-setup.php’);”

将composer.phar移动到全局位置(可选)

mv composer.phar /usr/local/bin/composer

然后 下面 我就不接着演示了 因为 我们全局是安装了 composer的,以上操作直接执行即可。
#### 安装TCPDF
```bash
# 在项目根目录下初始化Composer
composer init --no-interaction
直接执行还是报错了
[RuntimeException]                                                                   
  You have to run this command in interactive mode, or specify at least some data usi  
  ng --name, --require, etc.                                                           
init [--name NAME] [--description DESCRIPTION] [--author AUTHOR] [--type [TYPE]] [--homepage HOMEPAGE] [--require REQUIRE] [--require-dev REQUIRE-DEV] [-s|--stability STABILITY] [-l|--license LICENSE] [--repository REPOSITORY]
![](https://doc2.youyacao.com/server/index.php?s=/api/attachment/visitFile&sign=432f04248e8c9e0557658e2682379a57)
这个错误是因为你在运行 `composer init` 命令时没有提供足够的信息,且没有在交互式模式下操作。解决方法有两种:
### 1. 交互式模式(推荐,适合新手)
直接运行命令后按提示输入信息:
```bash
composer init

然后会出现一系列提示,如项目名称、描述、作者等,按需求填写或直接按回车使用默认值即可。

2. 非交互式模式(适合自动化或脚本)

在命令中直接指定必要参数,例如:

composer init --name=your-vendor/your-project --description="Your project description" --author="Your Name <your@email.com>" --type=project --license=MIT

根据你的实际情况修改上述参数值。

两种方式都能完成 composer.json 文件的初始化,选择适合你的方式即可。如果需要添加依赖包,可以在初始化时通过 --require 参数指定,也可以之后使用 composer require 命令添加。

当然我们还是就第一种


$ composer init

Welcome to the Composer config generator

This command will guide you through creating your composer.json config.

Package name (<vendor>/<name>) [ubuntu/bairong.youyacao.com]: bairong
The package name bairong is invalid, it should be lowercase and have a vendor name, a forward slash, and a package name, matching: [a-z0-9.-]+/[a-z0-9.-]+
Package name (<vendor>/<name>) [ubuntu/bairong.youyacao.com]:

继续报错,这是因为格式不对,我们按要求输入

zhuoivan/bairong

成功,接下来所有内容我直接默认过,对应内容参考

下面是每个配置项的详细说明和建议输入方式,你可以根据实际情况填写:

  1. Package name(已正确输入)
zhuoivan/bairong

你的输入符合规范(厂商名/项目名),直接回车即可

  1. Description(项目描述)
bairongcelue  # 可以直接使用你输入的这个,或更详细描述,比如:"百融策略相关项目"

按回车确认

  1. Author(作者信息)
IvanZhuo <422108995@qq.com>  # 系统已自动填充,直接回车确认;若要修改可重新输入,按n跳过则不设置
  1. Minimum Stability(最低稳定性)
stable  # 推荐输入stable(稳定版),适合生产环境;其他选项:dev(开发版)、alpha、beta等

直接输入后回车

  1. Package Type(项目类型)
project  # 推荐输入project(项目型),适合实际运行的应用;若为类库则输入library

输入后回车

  1. License(许可证,接下来会出现)
MIT  # 推荐选择MIT许可证,适合开源项目;按提示输入对应编号或直接输入许可证名称
  1. Require(依赖包,接下来会出现)
no  # 暂时不添加依赖,之后可用composer require单独添加;若需要直接输入包名和版本
  1. Require dev(开发环境依赖,接下来会出现)
no  # 同上,暂时不添加开发依赖

完成所有配置后,系统会显示预览并询问是否确认,输入yes回车即可生成composer.json文件。

看起来这里我在交互式配置依赖时输入了 “no”,导致系统误解为你要搜索名为 “no” 的包。以下是正确的处理方式:
如果暂时不想添加依赖
直接按回车或输入none,然后按回车,即可跳过依赖配置。

ok 我们最终成功

但是最后一步还是没成功就是权限 问题 哎 因为我没切换root权限 上面给大家讲了切换root但是我没切换

临时执行

sudo composer init

我们最终成功,只是名字这里比较乌龙我格式没对

安装TCPDF

composer require tecnickcom/tcpdf
```
还是一样 我们得

sudo composer require tecnickcom/tcpdf

进入了安装流程,本文完结,下一篇则是安装完成过后库我们进一步操作完整结构目录优化,标准化项目的交付,下篇见

目录
相关文章
|
存储 缓存 编译器
【CMake 命令相关知识】深入理解 CMake命令中的 内置缓存变量
【CMake 命令相关知识】深入理解 CMake命令中的 内置缓存变量
360 0
|
前端开发 JavaScript 安全
小红书前端架构
小红书前端架构
|
6月前
|
缓存 测试技术 网络安全
05百融云策略引擎项目交付-laravel实战完整交付定义常量分文件配置-独立建立lib类处理-成功导出pdf-优雅草卓伊凡
05百融云策略引擎项目交付-laravel实战完整交付定义常量分文件配置-独立建立lib类处理-成功导出pdf-优雅草卓伊凡
117 0
05百融云策略引擎项目交付-laravel实战完整交付定义常量分文件配置-独立建立lib类处理-成功导出pdf-优雅草卓伊凡
|
数据采集 监控 数据管理
《阿里云数据治理方案及案例分享》|学习笔记
快速学习《阿里云数据治理方案及案例分享》
2610 0
|
4月前
|
算法 Linux Shell
Linux实用技能:打包压缩、热键、Shell与权限管理
本文详解Linux打包压缩技巧、常用命令与原理,涵盖.zip与.tgz格式操作、跨系统传文件方法、Shell运行机制及权限管理,助你高效使用Linux系统。
Linux实用技能:打包压缩、热键、Shell与权限管理
|
3月前
|
人工智能 Java 物联网
Java与边缘AI:构建离线智能的物联网与移动应用
随着边缘计算和终端设备算力的飞速发展,AI推理正从云端向边缘端迁移。本文深入探讨如何在资源受限的边缘设备上使用Java构建离线智能应用,涵盖从模型优化、推理加速到资源管理的全流程。我们将完整展示在Android设备、嵌入式系统和IoT网关中部署轻量级AI模型的技术方案,为构建真正实时、隐私安全的边缘智能应用提供完整实践指南。
378 3
|
开发者 Python
如何在Python中管理模块和包的依赖关系?
在实际开发中,通常会结合多种方法来管理模块和包的依赖关系,以确保项目的顺利进行和可维护性。同时,要及时更新和解决依赖冲突等问题,以保证代码的稳定性和可靠性
578 159
|
监控
在 PowerShell 中获取内存使用率百分比
【8月更文挑战第27天】
438 5
|
监控 数据挖掘 UED
ROI
【5月更文挑战第16天】ROI
4220 4