私が望んでいることを実行するクエリを考えようとしていますが、それは私を困惑させたので、アイデアのためにいくつかの頭脳を選ぶと思いました.
各行と各列のループに読み取られて変換されるExcelファイルがあります。
Excelファイルには約5000の値があるため、多くのループが発生しています。2番目のループ内で列コードをデータベースに照会したいのですが、データベース内にいずれでもない値がある場合ループしているコードは削除されます。また、ループ内にあるがデータベース上にないコードは、ページにエコーされます。
スクリプトは正常に動作していますが、混乱しているクエリを構造化しているだけです。
どんなアドバイスでも大歓迎です、サイモン
私のコード:
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;
}
}
}
}