Frage

Das Problem ist folgendes: Wir sind eine Instanz einer Klasse testobject Schaffung und Erhaltung einer var mit einem Doppel füllen.

A-Klasse erweitert TestExcel von PHPExcel und wenn das Objekt testobject in den Konstruktor einreichen wir eine wissenschaftliche Schreibweise des var, wenn wir eine var_dump tun.

Kann mir jemand helfen Sie uns. Meine Kollegen und ich verstehen nicht, wie es möglich ist, dass der Inhalt einer Instanz durch die Erweiterung der PHPExcel Klasse geändert werden kann.

Wenn wir die Erweiterung nicht tun, gibt die var_dump die korrekte Schreibweise. - 200000 Wenn die Erweiterung zu tun bekommen wir die wissenschaftliche Notation - 2.0E + 5

// instance of the testObject

$number = new testObject();
$number->setNumber((double)200000);

// contruct testExcelClass
$excel = new TestExcel($number);


// Class TestObject      
class testObject {

      private $number;

      public function setNumber($number){
          $this->number = $number;
      }

      public function getNumber(){
          return $this->number;
      }

}

// class test excell extends from phpexcel (http://www.codeplex.com/PHPExcel) 
class TestExcel extends PHPExcel  {

    private $number;

    public function __construct($number){
      parent::__construct();

      $this->number = $number;
      print_r($this->number); exit();

    }

}
War es hilfreich?

Lösung 2

es schien ein Problem in PHP 5.2.6 zu sein, die die falsche Schreibweise angezeigt.

php 5.2.8 gelöst diesen Fehler.

Andere Tipps

Sie sollten wahrscheinlich eingestellt Formatierung der Zelle das gewünschte Zahlenformat zu haben. ich bin nicht sicher über die genaue Funktion, die Dokumente überprüfen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top