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

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

目录
相关文章
|
4月前
|
缓存 测试技术 网络安全
05百融云策略引擎项目交付-laravel实战完整交付定义常量分文件配置-独立建立lib类处理-成功导出pdf-优雅草卓伊凡
05百融云策略引擎项目交付-laravel实战完整交付定义常量分文件配置-独立建立lib类处理-成功导出pdf-优雅草卓伊凡
94 0
05百融云策略引擎项目交付-laravel实战完整交付定义常量分文件配置-独立建立lib类处理-成功导出pdf-优雅草卓伊凡
|
数据采集 监控 数据管理
《阿里云数据治理方案及案例分享》|学习笔记
快速学习《阿里云数据治理方案及案例分享》
2561 0
|
1月前
|
人工智能 Java 物联网
Java与边缘AI:构建离线智能的物联网与移动应用
随着边缘计算和终端设备算力的飞速发展,AI推理正从云端向边缘端迁移。本文深入探讨如何在资源受限的边缘设备上使用Java构建离线智能应用,涵盖从模型优化、推理加速到资源管理的全流程。我们将完整展示在Android设备、嵌入式系统和IoT网关中部署轻量级AI模型的技术方案,为构建真正实时、隐私安全的边缘智能应用提供完整实践指南。
319 3
|
开发者 Python
如何在Python中管理模块和包的依赖关系?
在实际开发中,通常会结合多种方法来管理模块和包的依赖关系,以确保项目的顺利进行和可维护性。同时,要及时更新和解决依赖冲突等问题,以保证代码的稳定性和可靠性
366 62
|
4月前
|
人工智能 前端开发 Serverless
10分钟在网站上增加一个AI助手
本活动教你10分钟内在网站上搭建AI助手,无需费用和技术门槛。通过阿里云百炼平台,可0代码创建大模型RAG应用,结合函数计算暴露为前端API,轻松实现智能问答。还可通过添加私有知识提升回答准确性,适用于企业官网等场景。
|
4月前
|
JSON Java 定位技术
抖音虚拟位置修改器,快手小红书陌陌均支持,jar最新xposed插件
这个代码实现了一个GPS位置模拟器,主要功能包括: 基于基准位置生成随机GPS坐标点
|
4月前
|
数据安全/隐私保护 Python
ip地址修改器,快手抖音小红书微博,修改IP属地工具【xposed插件】
生成一个Python代码示例,实现一个完整的IP修改工具。这个工具包含GUI界面、IP配置逻辑和网络测试功能
|
7月前
|
数据可视化 数据挖掘 数据建模
数据可视化工具大比拼:从Tableau到Power BI,谁才是你的最佳拍档?
数据可视化工具大比拼:从Tableau到Power BI,谁才是你的最佳拍档?
1036 12
|
11月前
|
机器学习/深度学习 人工智能 编解码
深度学习在图像识别中的革命性进展###
近年来,深度学习技术在图像识别领域取得了显著成就,极大地推动了人工智能的发展。本文探讨了深度学习模型如何通过模拟人类视觉系统来提高图像识别的准确性和效率,并分析了几种主流的深度学习架构及其在实际应用中的表现。此外,还讨论了当前面临的挑战及未来可能的发展方向。 ###
276 61