续借之前的任务vue.js 和fastapi
使用fastapi 和vue.js 重构php项目
路线
fastapi
+ 请求 get post
+ 返回json
+ session保持
+ 在web目录,statics 存放js html css
+ 文件上传与下载
vue.js
网页基础
ajax
登录实现
get post 实现
文件上传
重构项目
1.短链
2.blog 登入 写文章 编辑 删除 简单评论
3.视频网站
续借之前的任务vue.js 和fastapi
使用fastapi 和vue.js 重构php项目
路线
fastapi
+ 请求 get post
+ 返回json
+ session保持
+ 在web目录,statics 存放js html css
+ 文件上传与下载
vue.js
网页基础
ajax
登录实现
get post 实现
文件上传
重构项目
1.短链
2.blog 登入 写文章 编辑 删除 简单评论
3.视频网站
不要花里胡哨,直接跟着大佬的步伐
composer require tekintian/dompdf
大佬的默认中文字体:
膜拜大佬:
https://github.com/tekintian/dompdf
1.HTML文件或者string的HTML变量
2.变成PDF形式
$html="<html><body><h1>这是标题</h1><p>信心斯西南吓死你吸纳asSAA是ASIAJDIASD</p></body></html>";
$dompdf = new Dompdf();
//初始化
$dompdf->loadHtml($html);
//读取string信息
// (可选) 设置纸张大小和方向
$dompdf->setPaper('A4', 'portrait');
// 渲染 HTML
$dompdf->render();
$output = $dompdf->output();
//$output为PDF数据
3.使用file_put_contents($save, $output); 保存PDF文件
使用片段
$html = '<html><body><h1>'.$this->digital_to_chinese($n)." 《".$title."》的附件</h1><ol>";
foreach ($files as $key => $value) {
$html=$html."<li>".$value['name']."</li>";
}
$html=$html."</ol></body></html>";
// 创建一个新的 DOMPDF 实例
$dompdf = new Dompdf();
// 将 HTML 字符串加载到 DOMPDF
$dompdf->loadHtml($html);
// (可选) 设置纸张大小和方向
$dompdf->setPaper('A4', 'portrait');
// 渲染 HTML
$dompdf->render();
$output = $dompdf->output();
$save=WEB_ROOT."file/save/".$pdf;
file_put_contents($save, $output);
读取HTML信息
use Dompdf\Dompdf;
$dompdf = new Dompdf();
// 加载 HTML 文件
$html = file_get_contents('path/to/your/htmlfile.html');
// 设置 HTML 内容
$dompdf->loadHtml($html);
// 设置 PDF 的选项
$dompdf->setPaper('A4', 'portrait');
// 渲染 HTML 为 PDF
$dompdf->render();
// 输出PDF信息$pdfContent
$pdfContent = $dompdf->output();
//直接设置下载
// 设置响应头
header('Content-Type: application/pdf');
header('Content-Disposition: attachment; filename="output.pdf"');
// 输出 PDF 内容
echo $pdfContent;
<?php
namespace app\portal\service;
include "/home/wwwroot/test.test.org.cn/vendor/pdf/fpdf.php";
class PdfService
{
public function TitleList($title, $files){
$pdf = new \FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial', 'B', 16);
$pdf->Cell(0, 10, 'Hello World!', 0, 1, 'C');
$pdf->Output('/home/wwwroot/test.test.org.cn/public/example.pdf', 'F');
}
}
导入PHP文件 include "/home/wwwroot/test.test.org.cn/vendor/pdf/fpdf.php";
$pdf = new \FPDF(); 实例化类 必须反斜线