[英]How to get xls cell position in PHP
我正在尝试从 xls 文件中导入数据,为此我正在使用“电子表格库”,并且我以以下格式(数组)成功获取数据
[0] => Array
(
[0] => ABC
[1] => XYZ
...
)
[1] => Array
(
[1] => ADW
)
...
现在我想将“单元格”值保存到数据库中,例如在“xls”文件中,“ABC”position 是“A1”而“XYZ”是“B1”,所以“ADW”position 是“A2”,那怎么能我使用 Php 得到“单元位置”?
您可以根据数组的索引计算单元格 position,其中行从索引 0 的 1 开始,列从索引 0 的A
开始:
$data = array (
0 =>
array (
0 => 'ABC',
1 => 'XYZ'
),
1 =>
array (
1 => 'ADW',
20 => 'XYZ',
26 => 'AA2',
30 => 'PQR',
60 => 'WWW',
701 => 'ZZZ'
)
);
$result = array();
foreach ($data as $rownum => $row) {
foreach ($row as $colnum => $value) {
if ($colnum >= 26) {
$col0 = $colnum % 26;
$col1 = intdiv($colnum, 26);
$colstr = chr(64 + $col1) . chr(65 + $col0);
}
else {
$colstr = chr(65+$colnum);
}
$result[$colstr . ($rownum+1)] = $value;
}
}
print_r($result);
Output(我的样本数据):
Array
(
[A1] => ABC
[B1] => XYZ
[B2] => ADW
[U2] => XYZ
[AA2] => AA2
[AE2] => PQR
[BI2] => WWW
[ZZ2] => ZZZ
)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.