【发布时间】:2019-08-29 01:01:31
【问题描述】:
我收到错误:
消息:Pdf_label::__construct() 缺少参数 1,调用 C:\xampp\htdocs\project1b\system\core\Loader.php 在第 1285 行和 定义
文件名:libraries/PDF_Label.php
我想要做的是,我尝试在 codeigniter 中使用 fpdf 标签脚本 (Documentation Here),我已经尝试使用此代码在 codeigniter 中生成一个简单的 pdf:
public function cetakLabelfpdf()
{
$this->load->library('fpdf');
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial', 'B', 16);
$pdf->Cell(40, 10, 'Hello World!');
$pdf->Output();
}
它有效,但是当我尝试添加脚本(在本例中为标签脚本)时,我将标签脚本放在与 fpdf 文件(应用程序/库)相同的目录中,并使用此示例代码生成 pdf
public function cetakLabelfpdf()
{
$this->load->library('PDF_Label');
// Standard format
$pdf = new PDF_Label('L7163');
$pdf->AddPage();
// Print labels
for ($i = 1; $i <= 20; $i++) {
$text = sprintf("%s\n%s\n%s\n%s %s, %s", "Laurent $i", 'Immeuble Toto', 'av. Fragonard', '06000', 'NICE', 'FRANCE');
$pdf->Add_Label($text);
}
$pdf->Output();
}
我对第一条消息感到满意,如果有人能证明我在这个案例中做错了什么,我真的很感激。
【问题讨论】:
-
这看起来不像是一个ci库,而且有很多fpdf的repos,你用的是哪个?如果您没有使用任何 codeigniter 库来使用 fpdf,为什么要像加载它一样加载它?我认为这就是您的错误所在,因为当您通过
$this->load加载标签类时,它正在初始化标签类而没有所需的构造函数参数。 -
@Alex 我直接从fpdf.org 下载它,我会尝试找到使用所需构造函数初始化标签的解决方案,谢谢
-
afaik fpdf.org 没有 codeigniter 库。您根本不应该尝试通过
$this->load->library()加载它,而是在需要它的类的顶部使用 require 。只需像任何其他 php 类一样初始化它(就像你正在使用新词一样)。让我知道会发生什么... -
@Alex 非常感谢先生,我尝试您的建议,将 $this->load->library() 替换为 required() 并且代码有效!如果你能解释在这个 codeigniter 案例中 $this->load->library() 和 require() 的区别,我会非常感激。注意:请在回答按钮中回答,以便我可以将其标记为答案。
-
确定。很高兴我能帮上忙;)
标签: php codeigniter fpdf