Концепция добавления переменной в расширение класса - это то, что я не понимаю и могу использовать некоторую помощь.
Это пример класса, который я расширяю.Это прекрасно работает, но я не могу получить доступ к переменной $ XML.Я мог бы сделать $ XML глобальным, но я знаю, чтобы избежать этого.
<?php
//Sample XML Object
$XML = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<data><foo>Bingo!</foo></data>";
$XML = simplexml_load_string($XML);
// Extend the class
class myExt extends ENTERPRISE {
public function HTMLBlock() {
// Set font
$this->SetFont('helvetica', 'B', 10);
$html = '
<P style="font-weight:normal;">
This is a test text cell<br />
Foo is set to '.$XML->foo.'
</P>
';
// Title
$this->htmlToBlock(90, '200', $HTML );
}
}
$pdf = new myExt('L', 'Letter', 'Landscape', true, 'UTF-8', false);
?>
Я читал о конструкциях.Я знаю, что мне нужно добавить к родительской конструкции, я до сих пор не понимаю, куда и как я посылаю переменную.Я начал с чего-то вроде этого.(не работает)
<?php
//Sample XML Object
$XML = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<data><foo>1</foo></data>";
$XML = simplexml_load_string($XML);
// Extend the class
class myExt extends ENTERPRISE {
function __construct($xmlData) {
parent::__construct();
}
public function HTMLBlock() {
// Set font
$this->SetFont('helvetica', 'B', 10);
$html = '
<P style="font-weight:normal;">
This is a test text cell<br />
Foo is set to '.$XML->foo.'
</P>
';
// Title
$this->htmlToBlock(90, '200', $HTML );
}
}
$pdf = new myExt('L', 'Letter', 'Landscape', true, 'UTF-8', false);
?>
Как-нибудь отправить myExt () дополнительный параметр?Волшебным в конце?Я попробовал это, но не сработало.Может быть что-то вроде:
$pdf = new myExt('L', 'Letter', 'Landscape', true, 'UTF-8', false,$XML);
Спасибо за любые советы!