ホームページ バックエンド開発 PHPチュートリアル thinkphp で PDF を簡単にエクスポートするにはどうすればよいですか (tcpdf プラグインを使用)

thinkphp で PDF を簡単にエクスポートするにはどうすればよいですか (tcpdf プラグインを使用)

Apr 26, 2019 pm 05:18 PM
pdf thinkphp

この記事では、PDF エクスポートを簡単に実現するための thinkphp のメソッド コードを中心に説明します。一定の参考価値があります。興味のある友人はそれを知ることができます。お役に立てれば幸いです。

コードを記述する前に、次のように、まず tcpdf フォルダー全体をプロジェクト ディレクトリの ThinkPHP フォルダーに導入します。 /ThinkPHP/Library/Vendor/tcpdf

これ以上言うことはありません。コード

検査結果の詳細をエクスポート

    public function export()
    {
    //  导出考试结果明细(PDF)
        $id = I('id');
        $detailed = D('member_test_result');
        $parameter = $detailed->detailedResults($id);
        $name = $parameter['member_name'];
        $result = json_decode($parameter['test_result_str']);
        foreach ($result as $k => $v) {
            $test = M('test_cont');
            $array['question_title'] = $test->where('id=' . $k)->getField('qustion_title');
            //正确选项
            $array['state'] = $test->where('id=' . $k)->getField('state');
            //正确答案
            $wheres['test_id'] = $k;
            $wheres['state'] = $array['state'];
            $array['stateresult'] = M('test_answer')->where($wheres)->getField('answer_name');
            //选项
            $array['cont'] = $v;
            //选项内容
            $where['test_id'] = $k;
            $where['state'] = $array['cont'];
            $array['result'] = M('test_answer')->where($where)->getField('answer_name');
            $data[] = $array;
        }
        $content = &#39;<!doctype html>&#39;;
        $content .= &#39;<html lang="en">&#39;;
        $content .= &#39;<head>&#39;;
        $content .= &#39;<meta charset="UTF-8" />&#39;;
        $content .= &#39;<title>考试结果</title>&#39;;
        $content .= &#39;</head>&#39;;
        $content .= &#39;<body>&#39;;
        $content .= &#39;<p class="content">&#39;;
        $content .= &#39;<p align="center" style="color: #0a6ebd;font-size: 24px"><b>考试结果</b></p>&#39;;
        $content .= &#39; <p style="color:#6a6a6a;letter-spacing:4px">&#39;;
        $content .= &#39;<p><span>姓名:&#39;;
        $content .= $name;
        $content .= &#39;</span>&#39;;
        $content .= &#39;<span style="color:#fff;">1231&#39;;
        $content .= &#39;</span>&#39;;
        $content .= &#39;<span style="" >考试用时:&#39;;
        $content .= gmdate("i:s", $parameter[&#39;time_cost&#39;]);
        $content .= &#39;</span>&#39;;
        $content .= &#39;<span style="color:#fff;">1231&#39;;
        $content .= &#39;</span>&#39;;
        $content .= &#39;<span style="">考试分数:&#39;;
        $content .= $parameter[&#39;score&#39;];
        $content .= &#39;</span>&#39;;
        $content .= &#39;<hr/>&#39;;
        foreach ($data as $k => $v) {
            $content .= &#39;<p style=font-size: 20px><b>&#39;;
            $content .= $k + 1;
            $content .= &#39;、</b>&#39;;
            $content .= $v[&#39;question_title&#39;];
            $content .= &#39;</p>&#39;;
            $content .= &#39;<p style=" font-size: 14px">您的选项为:<span style="color:#0a6ebd;">&#39;;
            $content .= $v[&#39;cont&#39;];
            $content .= &#39;</span></p>&#39;;
            $content .= &#39;<p style=" font-size: 14px">您的答案为:<span style="color:#0a6ebd;">&#39;;
            $content .= $v[&#39;result&#39;];
            $content .= &#39;</span></p>&#39;;
            $content .= &#39;<p style=" font-size: 14px">正确选项为:<span style="color:red;">&#39;;
            $content .= $v[&#39;state&#39;];
            $content .= &#39;</span></p>&#39;;
            $content .= &#39;<p style=" font-size: 14px">正确答案为:<span style="color:red;">&#39;;
            $content .= $v[&#39;stateresult&#39;];
            $content .= &#39;</span></p>&#39;;
        };
        $content .= &#39;</p>&#39;;
        $content .= &#39;</body>&#39;;
        $content .= &#39;</html>&#39;;
        pdf($content);

    }
ログイン後にコピー

pdf メソッド
に移動します。

function pdf($html){
    vendor(&#39;Tcpdf.tcpdf&#39;);
    $pdf = new \Tcpdf(&#39;P&#39;, &#39;mm&#39;, &#39;A4&#39;, true, &#39;UTF-8&#39;, false);
    // 设置打印模式,设置文档信息
    $pdf->SetCreator(PDF_CREATOR);
    $pdf->SetAuthor(&#39;Nicola Asuni&#39;);
    $pdf->SetTitle(&#39;Examination result(考试结果)&#39;);
    $pdf->SetSubject(&#39;TCPDF Tutorial&#39;);
    $pdf->SetKeywords(&#39;TCPDF, PDF, PHP, example, test, guide&#39;);
    // 是否显示页眉和是否显示页脚
    $pdf->setPrintHeader(false);
    $pdf->setPrintFooter(true);
    // 设置页眉和页脚信息内容
    $pdf->SetHeaderData(&#39;logo.jpg&#39;, 40, &#39;Helloweba.com&#39;, &#39;小白测试&#39;, array(0,64,255), array(0,64,128));
    $pdf->setFooterData(array(0,64,0), array(0,64,128));
    // 设置页眉和页脚字体
    $pdf->setHeaderFont(Array(&#39;dejavusans&#39;, &#39;&#39;, &#39;12&#39;));
    $pdf->setFooterFont(Array(&#39;dejavusans&#39;, &#39;&#39;, &#39;10&#39;));
    // 设置间距
    $pdf->SetHeaderMargin(&#39;5&#39;);
    $pdf->SetFooterMargin(&#39;10&#39;);
    // 设置左、上、右的间距
    $pdf->SetMargins(&#39;10&#39;, &#39;10&#39;, &#39;10&#39;);
    // 设置是否自动分页  距离底部多少距离时分页
    $pdf->SetAutoPageBreak(TRUE, &#39;15&#39;);
    // 设置默认等宽字体
    $pdf->SetDefaultMonospacedFont(&#39;courier&#39;);
    // 设置行高
    $pdf->setCellHeightRatio(1);
    // 设置图像比例因子
    $pdf->setImageScale(1.25);
    //设置默认字体子集模式
    $pdf->setFontSubsetting(true);
    // 设置字体
    $pdf->SetFont(&#39;stsongstdlight&#39;, &#39;&#39;, 14, &#39;&#39;, true);
    $pdf->AddPage();
    $pdf->writeHTMLCell(0, 0, &#39;&#39;, &#39;&#39;, $html, 0, 1, 0, true, &#39;&#39;, true);
  //PDF输出   I:在浏览器中打开,D:下载,F:在服务器生成pdf ,S:只返回pdf的字符串
  $pdf->Output(rand_string(&#39;9&#39;).&#39;.pdf&#39;, &#39;I&#39;);
  }
ログイン後にコピー

関連チュートリアル: PHP ビデオ チュートリアル

以上がthinkphp で PDF を簡単にエクスポートするにはどうすればよいですか (tcpdf プラグインを使用)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

iPhoneでPDFを結合する方法 iPhoneでPDFを結合する方法 Feb 02, 2024 pm 04:05 PM

複数のドキュメントまたは同じドキュメントの複数ページを操作する場合、それらを 1 つのファイルに結合して他のユーザーと共有したい場合があります。共有を容易にするために、Apple では複数の PDF ファイルを 1 つのファイルに結合して、複数のファイルの送信を避けることができます。この記事では、iPhone で 2 つ以上の PDF を 1 つの PDF ファイルに結合するすべての方法を説明します。 iPhone で PDF を結合する方法 iOS では、ファイル アプリとショートカット アプリを使用する 2 つの方法で PDF ファイルを 1 つに結合できます。方法 1: ファイル アプリを使用する 2 つ以上の PDF を 1 つのファイルに結合する最も簡単な方法は、ファイル アプリを使用することです。 iPhoneで開く

iPhoneでPDFからテキストを取得する3つの方法 iPhoneでPDFからテキストを取得する3つの方法 Mar 16, 2024 pm 09:20 PM

Apple の Live Text 機能は、写真やカメラ アプリ内のテキスト、手書きのメモ、数字を認識し、その情報を他のアプリに貼り付けることができます。しかし、PDF を操作していてそこからテキストを抽出したい場合はどうすればよいでしょうか?この記事では、iPhoneでPDFファイルからテキストを抽出する方法をすべて説明します。 iPhone で PDF ファイルからテキストを取得する方法 [3 つの方法] 方法 1: PDF 上にテキストをドラッグ PDF からテキストを抽出する最も簡単な方法は、テキストを含む他のアプリと同じように、テキストをコピーすることです。 1. テキストを抽出する PDF ファイルを開き、PDF 上の任意の場所を長押しして、コピーするテキストの部分のドラッグを開始します。 2

PDFの署名を検証する方法 PDFの署名を検証する方法 Feb 18, 2024 pm 05:33 PM

私たちは通常、政府やその他の機関から PDF ファイルを受け取りますが、中にはデジタル署名が付いているものもあります。署名を検証すると、SignatureValid メッセージと緑色のチェック マークが表示されます。署名が検証されない場合、有効性は不明です。署名の検証は重要です。PDF で署名を検証する方法を見てみましょう。 PDF 形式の署名を検証する方法 PDF 形式で署名を検証すると、署名の信頼性が高まり、文書が受け入れられる可能性が高くなります。次の方法で PDF ドキュメントの署名を検証できます。 Adobe Reader で PDF を開きます。 署名を右クリックし、「署名プロパティの表示」を選択します。 「署名者証明書の表示」ボタンをクリックします。 「信頼」タブから信頼できる証明書リストに署名を追加します。 「署名の検証」をクリックして検証を完了します。

thinkphpプロジェクトの実行方法 thinkphpプロジェクトの実行方法 Apr 09, 2024 pm 05:33 PM

ThinkPHP プロジェクトを実行するには、Composer をインストールし、Composer を使用してプロジェクトを作成し、プロジェクト ディレクトリに入り、php bin/consoleserve を実行し、http://localhost:8000 にアクセスしてようこそページを表示する必要があります。

thinkphp にはいくつかのバージョンがあります thinkphp にはいくつかのバージョンがあります Apr 09, 2024 pm 06:09 PM

ThinkPHP には、さまざまな PHP バージョン向けに設計された複数のバージョンがあります。メジャー バージョンには 3.2、5.0、5.1、および 6.0 が含まれますが、マイナー バージョンはバグを修正し、新機能を提供するために使用されます。最新の安定バージョンは ThinkPHP 6.0.16 です。バージョンを選択するときは、PHP バージョン、機能要件、コミュニティ サポートを考慮してください。最高のパフォーマンスとサポートを得るには、最新の安定バージョンを使用することをお勧めします。

xmind ファイルを PDF ファイルにエクスポートする方法 xmind ファイルを PDF ファイルにエクスポートする方法 Mar 20, 2024 am 10:30 AM

xmind は、非常に実用的なマインド マッピング ソフトウェアです。人々の思考とインスピレーションを使用して作成されたマップ形式です。xmind ファイルを作成した後、通常、誰もが配布して使用できるように、PDF ファイル形式に変換します。次に、xmind ファイルをエクスポートする方法PDFファイルに?以下に具体的な手順を示しますので、ご参照ください。 1. まず、マインド マップを PDF ドキュメントにエクスポートする方法を説明します。 [ファイル]-[エクスポート]機能ボタンを選択します。 2. 新しく表示されたインターフェースで[PDFドキュメント]を選択し、[次へ]ボタンをクリックします。 3. エクスポート インターフェイスで、用紙サイズ、方向、解像度、ドキュメントの保存場所などの設定を選択します。設定が完了したら、[完了]ボタンをクリックします。 4. [完了]ボタンをクリックした場合

thinkphpの実行方法 thinkphpの実行方法 Apr 09, 2024 pm 05:39 PM

ThinkPHP フレームワークをローカルで実行する手順: ThinkPHP フレームワークをローカル ディレクトリにダウンロードして解凍します。 ThinkPHP ルート ディレクトリを指す仮想ホスト (オプション) を作成します。データベース接続パラメータを構成します。 Webサーバーを起動します。 ThinkPHP アプリケーションを初期化します。 ThinkPHP アプリケーションの URL にアクセスして実行します。

Edge ブラウザのショートカット キーを使用して PDF ファイルを回転する方法を学びます Edge ブラウザのショートカット キーを使用して PDF ファイルを回転する方法を学びます Jan 05, 2024 am 09:17 AM

PDF ファイルは非常に便利ですが、多くの友人は依然として Word を使用して編集したり閲覧したりするので、どのように変換すればよいでしょうか?以下に具体的な操作方法を見ていきましょう。 Edge ブラウザ pdf 回転ショートカット キー: A: 回転のショートカット キーは F9. 1. pdf ファイルを右クリックし、「プログラムから開く」を選択します。 2.「Microsoft Edge」を選択してPDFファイルを開きます。 3. PDF ファイルを入力すると、下にタスクバーが表示されます。 4. 「+」記号の横にある回転ボタンをクリックして右に回転します。

See all articles