Variable an Klasse übergeben

Webber

Mitglied
Hi,

nun hab ich mal ein Problem mit OO Klassen
ich habe folgende Klasse:
PHP:
define('FPDF_FONTPATH','fpdf/font/');
require('fpdf/fpdf.php');

class PDF extends FPDF
{

//Page header
function Header()
{
	//Logo
	$this->Image($ziel1,10,8);
	//Arial bold 15
	$this->SetFont('Arial','B',15);
	//Move to the right
	$this->Cell(80);
	//Title
	$this->Cell(30,10,'Title',1,0,'C');
	//Line break
	$this->Ln(20);
}

//Page footer
function Footer()
{
	//Position at 1.5 cm from bottom
	$this->SetY(-15);
	//Arial italic 8
	$this->SetFont('Arial','I',8);
	//Page number
	$this->Cell(0,5,'Zahnarzt: '.$arzt,0,0,'R');
	$this->Cell(0,10,'Zahntechniker: '.$techniker,0,0,'R');
}
}
nun habe ich in meinem Script die VARs $arzt und $techniker definiert.
Wie bekomm ich nun diese Variablenwerte in die Klasse bzw. in deren Funktionen?
Das es so wie jetzt nicht funktionier ist mir klar.
Ich habe es wie folgt versucht:
PHP:
define('FPDF_FONTPATH','fpdf/font/');
require('fpdf/fpdf.php');

class PDF extends FPDF
{
	var $arzt="";
	var $techniker="";
//Page header
function Header()
{
	//Logo
	$this->Image($ziel1,10,8);
	//Arial bold 15
	$this->SetFont('Arial','B',15);
	//Move to the right
	$this->Cell(80);
	//Title
	$this->Cell(30,10,'Title',1,0,'C');
	//Line break
	$this->Ln(20);
}

//Page footer
function Footer()
{
	//Position at 1.5 cm from bottom
	$this->SetY(-15);
	//Arial italic 8
	$this->SetFont('Arial','I',8);
	//Page number
	$this->Cell(0,5,'Zahnarzt: '.$this->arzt,0,0,'R');
	$this->Cell(0,10,'Zahntechniker: '.$this->techniker,0,0,'R');
}
}

//Instanciation of inherited class
$pdf=new PDF();
$pfd->arzt=$arzt;
$pfd->techniker=$techniker;
Leider auch ohne Erfolg.
Wer kann mir mal auf die Sprünge helfen?

thx & cu webber
 
Zuletzt bearbeitet:
Eigentlich müsste es schon gehen wenn du die Variablen richtig schreibst:
PHP:
$pdf=new PDF(); 
$pdf->arzt=$arzt;
$pdf->techniker=$techniker;
Du hast $pfd statt $pdf geschrieben.
 
Oh man wie peinlich.
Ich sollte früher schlafen gehen und dann morgens mit offenen Augen weitermachen.
Thx, das war es.
1000 mal gelesen und nicht einmal bemerkt.

Ich versinke nun erstmal im Boden, ich depp ich :-(

Nochmal danke webber
 
Eine andere Methode wäre, dem Klassennamen bei der Instanzierung des Objektes 1 oder 2 Variablen als Instanzvariablen mitzugeben und diese dann in einem Konstruktor (den du noch nicht hast) zu verarbeiten und den entsprechenden Variablen innerhalb der Funktion zuzuweisen.
 
Zurück