-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDo_work.php
87 lines (67 loc) · 3.28 KB
/
Do_work.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
<?php
/**
* Created by PhpStorm.
* User: Asus
* Date: 19.12.2016
* Time: 12:34
*/
require_once "Classes/PHPExcel.php";
class Do_work
{
private $Excel_file, $inputFileName;
private $sheet, $columns_count, $rows_count;
public function __construct()
{
$this->inputFileName = "Osen10112016.xls";
# открыть файл только на чтение
try {
$this->Excel_file = PHPExcel_IOFactory::load($this->inputFileName);
// выбрать активный лист; нумерация с нуля
$this->Excel_file->setActiveSheetIndex(0);
// получаем этот лист для работы
$this->sheet = $this->Excel_file->getActiveSheet();
//getHighestColumn() возвращает символьное представление последнего занятого столбца
// columnIndexFromString позволяет определить индекс столбца по его символьному представлению
$this->columns_count = PHPExcel_Cell::columnIndexFromString($this->sheet->getHighestColumn());
// узнаем количество строк
$this->rows_count = $this->sheet->getHighestRow();
} catch (Exception $e) {
//pathinfo - функция , возвращающая информацию о пути к файлу
// параметр PATHINFO_BASENAME- Возвращает последний компонент имени из указанного пути
die('Error loading file "' . pathinfo($this->inputFileName, PATHINFO_BASENAME) . '": ' . $e->getMessage());
}
}
public function ADD_DAY()
{
$db = new Database();
for ($row = 10; $row < 107; $row++) {
for ($column = 0; $column < 1; $column++) {
$str=$this->pars_merge_sells($row,$column);
var_dump($str);
echo " Что такое<br>";
$db->Add_day($str);
}
}
}
private function pars_merge_sells($row, $column)
{
//найдем все объединенные ячейки на листе. Это массив
$mergedCells = $this->sheet->getMergeCells();
global $cell;
//echo "I am here<br>";
$cell = $this->sheet->getCellByColumnAndRow($column, $row);
foreach ($mergedCells as $currMergedRange) {
//если текущая ячейка принадлежит какой-то из объединенных ячеек
if ($cell->isInRange($currMergedRange)) {
//если да, то достанем диапазон ячеек в который попала текущая ячейка
$currMergedCellsArray = PHPExcel_Cell::splitRange($currMergedRange);
// присвоить текущей ячейке значение первой ячейки из выбранного диапазона
$cell = $this->sheet->getCell($currMergedCellsArray[0][0]);
//var_dump( $cell);
unset($currMergedRange);
break;
}
}
return ($cell->getFormattedValue());
}
}