色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

PHP laravel實(shí)現(xiàn)導(dǎo)出PDF功能

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

一、laravel-tcpdf

導(dǎo)出PDF文件Laravel框架為我們集成了一個(gè)插件tcpdf。

下載地址:

然后使用composer進(jìn)行安裝就可以了。

具體安裝過程,請(qǐng)查看文末補(bǔ)充內(nèi)容

使用的時(shí)候記得use 一下 命名空間。

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

二、tcpdf

tcpdf官方網(wǎng)站:

我下載了完整版的TCPDF

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

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

調(diào)用代碼:

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

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

這部分是百度過來的,網(wǎng)上挺多關(guān)于這個(gè)的文章的,內(nèi)容基本一致。

1:找到output函數(shù),注釋以下代碼(在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的基本使用。

補(bǔ)充

laravel5.8引入第三方類庫(kù)的方法詳解

有需求需要使用PHPMailer發(fā)送郵件。

那么首先需要引入PHPMailer這個(gè)第三方的類庫(kù)。我是這樣做的:

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

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

2:修改項(xiàng)目根目錄下的composer.json文件

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

添加你第三方類庫(kù)的位置到autoload中

3:執(zhí)行composer命令,在網(wǎng)站根目錄下:

composer dump-autoload

4:調(diào)用:

(1):使用命名空間

use PHPMailer\src\PHPMailer;

(2):調(diào)用

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

如果報(bào)錯(cuò),就在實(shí)例化前邊加一個(gè)轉(zhuǎn)義符\

至此,laravel引入第三方類庫(kù)成功。

到此這篇關(guān)于PHP laravel實(shí)現(xiàn)導(dǎo)出PDF功能的文章就介紹到這了,更多相關(guān)PHP laravel導(dǎo)出PDF內(nèi)容請(qǐng)搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

標(biāo)簽: PHP
主站蜘蛛池模板: 久草资源在线视频 | 欧美刺激午夜性久久久久久久 | 成人a毛片 | 日韩亚洲国产综合久久久 | 国产亚洲区 | 久久国产欧美日韩高清专区 | 99在线观看视频免费 | 在线观看国产一区二区三区99 | 国产欧美日韩不卡在线播放在线 | 九九九九九九精品免费 | 亚洲精品成人一区 | 免看一级a一片成人123 | 精品视频一区二区三区在线观看 | 超级碰碰碰视频视频在线视频 | 欧美xx在线观看 | 国产夫妻视频 | 成人a免费α片在线视频网站 | 一级欧美一级日韩 | 国产精品视频免费一区二区三区 | 亚洲日本在线看片 | 日本一级毛片免费播放 | 亚洲品质自拍网站 | 欧美黄www免费 | 国产在线观看成人 | www.成人网 | 国产成人综合高清在线观看 | 97午夜影院| 三级网站免费 | 成年人在线免费观看视频网站 | 韩国美女爽快一毛片免费 | 日本一区二区高清免费不卡 | 成人在线视频免费 | 欧美午夜a级精美理论片 | 成人国产永久福利看片 | a毛片免费看 | 成年人免费看视频 | 99国产精品一区二区 | 日韩亚洲一区中文字幕在线 | 污到下面流水的视频 | 久草视频免费 | 中文字幕在线看 |