maniek74
21.11.2015, 12:44:01
Witam
W pliku Excel mam kolumnę 5,00 zł, przy imporcie otrzymuje $ 5.00. Jak można zrobić żeby otrzymać samo 5?
<?php
include '../class/PHPExcel/IOFactory.php';
$inputFileName = '../Zeszyt1.xlsx';
$objPHPExcel = PHPExcel_IOFactory::load($inputFileName);
$allDataInSheet = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true);
$arrayCount = count($allDataInSheet); print '<table border="1">'; for($i=3;$i<=$arrayCount;$i++){
$collectName = $allDataInSheet[$i]["A"];
$collectDateEnd = $allDataInSheet[$i]["B"];
$collectLocation = $allDataInSheet[$i]["C"];
$collectPrice = $allDataInSheet[$i]["D"];
$collectEmail = $allDataInSheet[$i]["E"];
$collectDate = $allDataInSheet[$i]["F"];
print '<td>'.$collectName.'</td>'; print '<td>'.$collectDateEnd.'</td>'; print '<td>'.$collectLocation.'</td>'; print '<td>'.$collectPrice.'</td>'; print '<td>'.$collectEmail.'</td>'; print '<td>'.$collectDate.'</td>'; }
?>
Pozdrawiam
CuteOne
21.11.2015, 14:30:45
$collectPrice = (int) $allDataInSheet[$i]["D"]; //lub (float) w zależności od potrzeb
maniek74
21.11.2015, 14:38:27
Próbowalem zwraca 0 jeszcze zauważyłem problem z datą bo zamiast 2015-02-01 zwraca 02-01-15
CuteOne
21.11.2015, 14:52:45
Zrób dumpa z $allDataInSheet, i wrzuć nam tutaj. Problem z datmi, to ustawienia lokalne, w PL używamy dd-mm-YYYY, zrób z tego \DateTime a potem wyświetl format('YYYY-mm-dd')
maniek74
21.11.2015, 15:16:03
z datą sobie już poradziłem:
$dateEnd = DateTime::createFromFormat('m-d-y', $allDataInSheet[$i]["B"]);
$date = DateTime::createFromFormat('m-d-y', $allDataInSheet[$i]["F"]);
i jest oki nie umiem jedynie sobie pordzić z ceną
próbowwałem
$number = filter_var($allDataInSheet[$i]["D"], FILTER_SANITIZE_NUMBER_INT);
ale zamiast 5 zwraca mi 500.
// Edit
Poradziłem sobie
$number = substr(filter_var($allDataInSheet[$i]["D"], FILTER_SANITIZE_NUMBER_INT), 0, -2);
Pytanie czynie ma lepszej metody aby zwrócił liczby w tej komórce.
Sorki że się spytam ale co to znaczy zrób dumpa z $allDataInSheet ?
Pozdrawiam
CuteOne
21.11.2015, 15:29:08
wstaw var_dump($allDataInSheet); przed pętlą
maniek74
21.11.2015, 15:40:23
zróciło ["D"]=> string(6) "$ 5.00", oczywiście jest tego więcej, ale nie chcę zaśmiecać forum
CuteOne
21.11.2015, 19:32:24