我正在考虑一个能够做我想要的事情的查询,但是它让我感到难过,所以我想我会选择一些想法的大脑。
我有一个excel文件,它被读取并转换为每行和每列的循环。
excel文件中有大约5000个值,因此发生了很多循环,我希望它在第二个循环内查询列代码中的数据库,如果我的数据库中有一个值不是它循环的任何代码都将删除它。循环中但不在数据库中的任何代码都将在页面上回显。
我的脚本运行正常,但它只是构造了我感到困惑的查询。
任何有关建议的建议, 西蒙
我的代码:
fileName = '2_1_2013_UPC_customer.xlsx';
$objPHPExcel = PHPExcel_IOFactory::load("2_1_2013_UPC_customer.xlsx");
include_once dirname(__FILE__) . ('/PHPExcel/Writer/Excel2007.php');
require_once dirname(__FILE__) . '/PHPExcel/IOFactory.php';
$objPHPExcel = PHPExcel_IOFactory::load("2_1_2013_UPC_customer.xlsx");
foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) {
$worksheetTitle = $worksheet->getTitle();
$highestRow = $worksheet->getHighestRow(); // e.g. 10
$highestColumn = $worksheet->getHighestColumn(); // e.g 'F'
$highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);
$nrColumns = ord($highestColumn) - 64;
for ($row = 2; $row <= $highestRow; ++$row) {
for ($col = 0; $col < $highestColumnIndex; ++$col) {
$cell = $worksheet->getCellByColumnAndRow($col, $row);
$val = $cell->getValue();
$dataType = PHPExcel_Cell_DataType::dataTypeForValue($val);
if ($val == null) {
} else {
if ($col == 0) {
$name = $val;
}
if ($col == 2) {
$description = $val;
}
if ($col == 3) {
$reference = $val;
}
if ($col == 4) {
$weight = $val;
}
}
}
}
答案 0 :(得分:1)
在环绕它时构建excel文件中所有代码的数组。获得excel文件中的所有代码后,查询数据库并获取所有代码的数组。然后你可以轻松地比较它们。一旦你不必担心所有的php_excel代码,它应该会更容易。一旦你将两个数组分开,就可以使用php array_search函数检查两个数组中是否存在代码然后处理它。