PHPExcel:научная запись double/float
Вопрос
Проблема заключается в следующем:Мы создаем экземпляр класса testObject и заполняем переменную двойным значением.
Класс TestExcel является наследником PhpExcel, и при отправке объекта testObject в конструктор мы получаем экспоненциальную запись переменной, когда выполняем var_dump.
Может ли кто-нибудь нам помочь?Мои коллеги и я не понимаем, как можно изменить содержимое экземпляра путем расширения класса phpExcel.
Если мы не делаем расширение, var_dump возвращает правильное обозначение.- 200000 При продлении мы получаем научную нотацию- 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();
}
}
Решение 2
Похоже, проблема в PHP 5.2.6 заключалась в отображении неправильных обозначений.
php 5.2.8 исправил эту ошибку.
Другие советы
вам, вероятно, следует установить форматирование ячейки, чтобы иметь желаемый числовой формат.я не уверен насчет точной функции, проверьте документацию.