PHPExcel: wissenschaftliche Schreibweise der Doppel / float
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();
}
}
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.