PHPExcel: notação científica da dupla / float
Pergunta
O problema é o seguinte: Estamos criando uma instância de uma classe testObject e preencher um var com um duplo.
A classe TestExcel se estende desde PHPExcel e aquando da apresentação do objeto testObject para o construtor temos uma notação científica do var quando fazemos um var_dump.
alguém pode ajudar-nos para fora. Meus colegas e eu não entendo como é possível que o conteúdo de uma instância pode ser alterado estendendo a classe PHPExcel.
Quando não fazemos a extensão, o var_dump retorna a notação correta. - 200000 Ao fazer a extensão temos a notação científica - 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();
}
}
Solução 2
parecia ser um problema no PHP 5.2.6 que exibia a notação errado.
php 5.2.8 resolvido este bug.
Outras dicas
você provavelmente deve definir a formatação da célula para ter o formato de número desejado. não estou certo sobre a função exata, verifique os docs.