переменная pass внутри класса extends - PullRequest
0 голосов
/ 23 марта 2019

У меня вопрос по поводу ди класса "TCPDF" я не могу передать имя динамического фона в классе MYPDF extends TCPDF

$newimg = 'mypic.jpg'

    class MYPDF extends TCPDF {

        public function Header() {
            $bMargin = $this->getBreakMargin();
            $auto_page_break = $this->AutoPageBreak;
            $this->SetAutoPageBreak(false, 0);

        $img_file = K_PATH_IMAGES.'test.jpg';
            $this->Image($img_file, 0, 0, 210, 297, '', '', '', false, 300, '', false, false, 0);
            $this->SetAutoPageBreak($auto_page_break, $bMargin);
            $this->setPageMark();

        }
    }   

Я бы использовал $newimg в

$img_file = K_PATH_IMAGES.$newimg;

Я пытался объявить глобальный внутри

public function Header()

но это не работает.

1 Ответ

0 голосов
/ 23 марта 2019

Вы можете определить свойство в своем классе и при желании - добавить к нему метод получения / установки:

class MYPDF extends TCPDF {

    protected $pic_img = 'someDefaultFile.jpg';

    public function Header() {
        $bMargin = $this->getBreakMargin();
        $auto_page_break = $this->AutoPageBreak;
        $this->SetAutoPageBreak(false, 0);

        $img_file = K_PATH_IMAGES . $this->pic_img;
        $this->Image($img_file, 0, 0, 210, 297, '', '', '', false, 300, '', false, false, 0);
        $this->SetAutoPageBreak($auto_page_break, $bMargin);
        $this->setPageMark();

    }

    public setPicImg($value)
    {
        $this->pic_img = $value;

        return $this;
    }

    public getPicImg($value)
    {
        return $this->pic_img;
    }
}

// sample usage
$obj = (new MYPDF())->setPicImg($newimg);
$obj->header(); // or other methods
...