Использовать переменную в публичной функции php

1

Я новичок в php. У меня есть:

require_once('tcpdf_include.php');

    $poruka = $user['porukanadnu'];

class MYPDF extends TCPDF {


    // Page footer
    public function Footer() {

        // Position at 15 mm from bottom
        $this->SetY(-15);
        // Set font
        $this->SetFont('helvetica', 'I', 8);
        // Page number
        $this->Cell(0, 10, 'Page '.$poruka, 0, false, 'C', 0, '', 0, false, 'T', 'M');
    }
}

Почему я не могу использовать переменную $poruka в публичной функции? И как сделать это возможным?

Теги:
class
function
public

1 ответ

1
Лучший ответ

Вы пытаетесь использовать $poruka в классе, но там он недоступен, вы можете использовать его в классе, если сначала объявите его глобальной областью, например:

require_once('tcpdf_include.php');

$poruka = $user['porukanadnu'];

class MYPDF extends TCPDF {


    // Page footer
    public function Footer() {
        global $poruka;     // This will let you use $poruka.

        // Position at 15 mm from bottom
        $this->SetY(-15);
        // Set font
        $this->SetFont('helvetica', 'I', 8);
        // Page number
        $this->Cell(0, 10, 'Page '.$poruka, 0, false, 'C', 0, '', 0, false, 'T', 'M');
    }
}

В качестве альтернативы вы можете передать его в функцию, например:

require_once('tcpdf_include.php');

$poruka = $user['porukanadnu'];

class MYPDF extends TCPDF {


    // Page footer
    public function Footer($poruka) {

        // Position at 15 mm from bottom
        $this->SetY(-15);
        // Set font
        $this->SetFont('helvetica', 'I', 8);
        // Page number
        $this->Cell(0, 10, 'Page '.$poruka, 0, false, 'C', 0, '', 0, false, 'T', 'M');
    }
}

но тогда, когда вы вызываете функцию, вам нужно включить ее в качестве атрибута:

   Footer($poruka);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню