av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

PHP laravel實現導出PDF功能

瀏覽:157日期:2022-06-06 08:44:08
目錄
  • 一、laravel-tcpdf
  • 二、tcpdf
  • 三、TCPDF解決保存中文文件名的方法
  • 補充

一、laravel-tcpdf

導出PDF文件Laravel框架為我們集成了一個插件tcpdf。

下載地址:

然后使用composer進行安裝就可以了。

具體安裝過程,請查看文末補充內容

使用的時候記得use 一下 命名空間。

但是這里有一個問題,使用這個插件導出文件無法使用中文,且我還沒有找到解決辦法,因此,這個laravel的tcpdf插件我就沒有使用。

二、tcpdf

tcpdf官方網站:

我下載了完整版的TCPDF

下載地址:https://github.com/tecnickcom/TCPDF.git

我們將下載的包放在框架根目錄下的app/Extend/tcpdf中。

調用代碼:

require_once("../app/Extend/tcpdf/tcpdf.php");$pdf = new TCPDF();// 設置文檔信息$pdf->SetCreator("懶人開發網");$pdf->SetAuthor("懶人開發網");$pdf->SetTitle("TCPDF示例");$pdf->SetSubject("TCPDF示例");$pdf->SetKeywords("TCPDF, PDF, PHP"); // 設置頁眉和頁腳信息$pdf->SetHeaderData("tcpdf_logo.jpg", 30, "LanRenKaiFA.com", "學會偷懶,并懶出效率!", [0, 64, 255], [0, 64, 128]);$pdf->setFooterData([0, 64, 0], [0, 64, 128]); // 設置頁眉和頁腳字體$pdf->setHeaderFont(["stsongstdlight", "", "10"]);$pdf->setFooterFont(["helvetica", "", "8"]); // 設置默認等寬字體$pdf->SetDefaultMonospacedFont("courier"); // 設置間距$pdf->SetMargins(15, 15, 15);//頁面間隔$pdf->SetHeaderMargin(5);//頁眉top間隔$pdf->SetFooterMargin(10);//頁腳bottom間隔 // 設置分頁$pdf->SetAutoPageBreak(true, 25); // set default font subsetting mode$pdf->setFontSubsetting(true); //設置字體 stsongstdlight支持中文$pdf->SetFont("stsongstdlight", "", 14); //第一頁$pdf->AddPage();$pdf->writeHTML("<div><h1>第一頁內容</h1></div>");$pdf->writeHTML("<p>我是第一行內容</p>");$pdf->writeHTML("<p>我是第二行內容</p>");$pdf->writeHTML("<p>我是第三行內容</p>");$pdf->Ln(5);//換行符$pdf->writeHTML("<p><a  rel="external nofollow"  title="">懶人開發網</a></p>"); //第二頁$pdf->AddPage();$pdf->writeHTML("<h1>第二頁內容</h1>"); //輸出PDF$pdf->Output("t.pdf", "I");//I輸出、D下載

三、TCPDF解決保存中文文件名的方法

這部分是百度過來的,網上挺多關于這個的文章的,內容基本一致。

1:找到output函數,注釋以下代碼(在7560行左右):

if ($dest[0] != "F") {    $name = preg_replace("/[s]+/", "_", $name);    $name = preg_replace("/[^a-zA-Z0-9_.-]/", "", $name);}

2:搜索下面這行代碼

header("Content-Disposition: attachment; filename="".basename($name).""");

替換成:

header("Content-Disposition: attachment; filename="".$name.""");

以上大概就是tcpdf的基本使用。

補充

laravel5.8引入第三方類庫的方法詳解

有需求需要使用PHPMailer發送郵件。

那么首先需要引入PHPMailer這個第三方的類庫。我是這樣做的:

1:在app目錄下新建Extend目錄。如下圖所示:

將PHPMailer放入Extend目錄下。如下圖所示

2:修改項目根目錄下的composer.json文件

"autoload": {"psr-4": {    "App\\": "app/"},"classmap": [    "database/seeds",    "database/factories",    "app/Extend/PHPMailer/src"]    },

添加你第三方類庫的位置到autoload中

3:執行composer命令,在網站根目錄下:

composer dump-autoload

4:調用:

(1):使用命名空間

use PHPMailer\src\PHPMailer;

(2):調用

 //實例化PHPMailer核心類$mail = new PHPMailer();

如果報錯,就在實例化前邊加一個轉義符\

至此,laravel引入第三方類庫成功。

到此這篇關于PHP laravel實現導出PDF功能的文章就介紹到這了,更多相關PHP laravel導出PDF內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

標簽: PHP
主站蜘蛛池模板: 国产精品久久久久久久久久久久冷 | 日韩在线观看精品 | 91久久国产精品 | 国产一区二区三区四区在线观看 | 99热播放 | 国产伦精品一区二区三区照片91 | 亚洲免费在线播放 | 男女午夜激情视频 | 久久久久国产精品 | 国产精品网址 | 在线免费观看a级片 | 特黄特黄a级毛片免费专区 av网站免费在线观看 | 中国一级特黄视频 | 婷婷久久五月 | 欧美一级毛片免费观看 | 超碰在线播 | 欧美日韩久久 | 一区二区av | 人妖一区 | 91传媒在线观看 | 久久久久久亚洲精品 | 亚洲天堂一区二区 | 亚洲日本欧美 | 国产第一区二区 | 一区二区三区四区在线免费观看 | 欧美日韩精品一区二区三区视频 | 精品国产一区二区三区久久影院 | 色噜噜色综合 | 国产成人jvid在线播放 | 日韩视频精品在线 | 久久精品国产免费 | 国产精品视频免费 | 日韩在线视频一区 | 欧美视频免费在线 | 99久久婷婷国产综合精品首页 | 国产黄色网址在线观看 | 自拍偷拍亚洲一区 | 亚洲大片 | 国产成人精品久久二区二区 | 91久久| 一级黄色播放 |