【发布时间】:2014-02-12 05:32:36
【问题描述】:
我正在使用 TCPDF 和 Codeigniter。我正在尝试使用来自我的 MYSQL-DB 的信息创建一个自定义标头:$header_content。
尽管我无法将变量导入到类 MYPDF 中而不会出现变量不退出的错误。
如何将变量导入到类中?
我确信有一个简单的解决方案,我就是想不通! :)
控制器/pdf.php
class Pdf extends CI_controller {
public function __construct()
{
parent::__construct();
$this->load->model('item_model');
}
public function create($nr = 1)
{
$data['pd']= $this->item_model->get('personal_details');
require_once APPPATH.'third_party/tcpdf/tcpdf.php';
$this->load->view('create_1', $data);
}
}
查看/create_1.php
$header_content = $pd->fname.' '.$pd->sname;
$header_font = $pd->font.;
class MYPDF extends TCPDF
{
function __construct()
{
parent::__construct();
}
//Page header
public function Header()
{
// Set font
$this->SetFont($header_font, '', 10);
// Title
$this->Cell(0, 15, $header_content, 0, false, 'L', 0, '', 0, false, 'M', 'M');
}
}
// create new PDF document
$pdf = new MYPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
【问题讨论】:
-
父函数的变量(如
$header)不在作用域内,除非您使用parent::调用它,否则它不会运行,即使那样您也无法访问它们。您可以访问对象本身的公共变量和受保护变量,所以$this->whateveryouneed。
标签: php codeigniter class tcpdf extends