今天小編給大家分享一下PHP laravel如何實現(xiàn)導(dǎo)出PDF功能的相關(guān)知識點,內(nèi)容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
專注于為中小企業(yè)提供做網(wǎng)站、網(wǎng)站建設(shè)服務(wù),電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)市中免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。
導(dǎo)出PDF文件Laravel框架為我們集成了一個插件tcpdf。
然后使用composer進行安裝就可以了。
使用的時候記得use 一下 命名空間。
但是這里有一個問題,使用這個插件導(dǎo)出文件無法使用中文,且我還沒有找到解決辦法,因此,這個laravel的tcpdf插件我就沒有使用。
我們將下載的包放在框架根目錄下的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è)置頁眉和頁腳信息
$pdf->SetHeaderData('tcpdf_logo.jpg', 30, 'LanRenKaiFA.com', '學會偷懶,并懶出效率!', [0, 64, 255], [0, 64, 128]);
$pdf->setFooterData([0, 64, 0], [0, 64, 128]);
// 設(shè)置頁眉和頁腳字體
$pdf->setHeaderFont(['stsongstdlight', '', '10']);
$pdf->setFooterFont(['helvetica', '', '8']);
// 設(shè)置默認等寬字體
$pdf->SetDefaultMonospacedFont('courier');
// 設(shè)置間距
$pdf->SetMargins(15, 15, 15);//頁面間隔
$pdf->SetHeaderMargin(5);//頁眉top間隔
$pdf->SetFooterMargin(10);//頁腳bottom間隔
// 設(shè)置分頁
$pdf->SetAutoPageBreak(true, 25);
// set default font subsetting mode
$pdf->setFontSubsetting(true);
//設(shè)置字體 stsongstdlight支持中文
$pdf->SetFont('stsongstdlight', '', 14);
//第一頁
$pdf->AddPage();
$pdf->writeHTML('
第一頁內(nèi)容
我是第一行內(nèi)容
'); $pdf->writeHTML('我是第二行內(nèi)容
'); $pdf->writeHTML('我是第三行內(nèi)容
'); $pdf->Ln(5);//換行符 $pdf->writeHTML(''); //第二頁 $pdf->AddPage(); $pdf->writeHTML('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的基本使用。
laravel5.8引入第三方類庫的方法詳解
有需求需要使用PHPMailer發(fā)送郵件。
那么首先需要引入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:執(zhí)行composer命令,在網(wǎng)站根目錄下:
composer dump-autoload
4:調(diào)用:
(1):使用命名空間
use PHPMailer\src\PHPMailer;
(2):調(diào)用
//實例化PHPMailer核心類
$mail = new PHPMailer();
如果報錯,就在實例化前邊加一個轉(zhuǎn)義符\
以上就是“PHP laravel如何實現(xiàn)導(dǎo)出PDF功能”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。