从PHP更新SQL表

从PHP更新SQL表,php,sql,Php,Sql,我有两个SQL表: Table LRU (ID_LRU, LRU) ==> (int Auto increment) Table article(ID_Article, Designiation, ID_LRU) ==> (varchar,varchar, int) 我有两个文件equipment.xsls和equipment.xsls,我从PHP 我使用了两个函数(几乎相似)来解析这两个文件: public function parseEquipement($filePath =

我有两个SQL表:

Table LRU (ID_LRU, LRU) ==> (int Auto increment)
Table article(ID_Article, Designiation, ID_LRU) ==> (varchar,varchar, int)
我有两个文件
equipment.xsls
equipment.xsls
,我从
PHP

我使用了两个函数(几乎相似)来解析这两个文件:

public function parseEquipement($filePath = null) {
        set_time_limit(0);
        $listEquipement = [];
        $count = 0;
        $chunkSize = 1024;
        $objReader = PHPExcel_IOFactory::createReader(PHPExcel_IOFactory::identify($filePath));
        $spreadsheetInfo = $objReader->listWorksheetInfo($filePath);
        $chunkFilter = new \Floose\Parse\ChunkReadFilter();
        $objReader->setReadFilter($chunkFilter);
        $objReader->setReadDataOnly(true);
        $chunkFilter->setRows(0, 1);
        $objPHPExcel = $objReader->load($filePath);
        $totalRows = $spreadsheetInfo[0]['totalRows'];
        for ($startRow = 1; $startRow <= $totalRows; $startRow += $chunkSize) {
            $chunkFilter->setRows($startRow, $chunkSize);
            $objPHPExcel = $objReader->load($filePath);
            $sheetData = $objPHPExcel->getActiveSheet()->toArray(null, null, true, false);
            $startIndex = ($startRow == 1) ? $startRow : $startRow - 1;
            if($dataToAnalyse[0][0]==NULL){
                break;
            }
            if (!empty($sheetData) && $startRow < $totalRows) {
                $dataToAnalyse = array_slice($sheetData, $startIndex, $chunkSize);
                for ($i = 0; $i < $chunkSize; $i++) {
                    if ($dataToAnalyse[$i]['0'] != NULL) {
                        $listEquipement[] = new Article($dataToAnalyse[$i]['0'], '', $dataToAnalyse[$i]['1']);
                        $count++;
                    }
                }
            }
            $objPHPExcel->disconnectWorksheets();
            unset($objPHPExcel, $sheetData);
        }           


        //echo($totalRows);
        //echo($count);
        return $listEquipement;
    }

    public function parseEquipment($filePath = null) {
        set_time_limit(0);
        $listEquipement = [];
        $count = 0;
        $chunkSize = 1024;
        $objReader = PHPExcel_IOFactory::createReader(PHPExcel_IOFactory::identify($filePath));
        $spreadsheetInfo = $objReader->listWorksheetInfo($filePath);
        $chunkFilter = new \Floose\Parse\ChunkReadFilter();
        $objReader->setReadFilter($chunkFilter);
        $objReader->setReadDataOnly(true);
        $chunkFilter->setRows(0, 1);
        $objPHPExcel = $objReader->load($filePath);
        $totalRows = $spreadsheetInfo[0]['totalRows'];
        for ($startRow = 1; $startRow <= $totalRows; $startRow += $chunkSize) {
            $chunkFilter->setRows($startRow, $chunkSize);
            $objPHPExcel = $objReader->load($filePath);
            $sheetData = $objPHPExcel->getActiveSheet()->toArray(null, null, true, false);
            $startIndex = ($startRow == 1) ? $startRow : $startRow - 1;
            if($dataToAnalyse[0][0]==NULL){
                break;
            }
            if (!empty($sheetData) && $startRow < $totalRows) {
                $dataToAnalyse = array_slice($sheetData, $startIndex, $chunkSize);
                for ($i = 0; $i < $chunkSize; $i++) {
                    if ($dataToAnalyse[$i]['0'] != NULL) {
                        $listEquipement[] = new Article($dataToAnalyse[$i]['2'], $dataToAnalyse[$i]['3'], $dataToAnalyse[$i]['5']);
                        $count++;
                    }
                }
            }
            $objPHPExcel->disconnectWorksheets();
            unset($objPHPExcel, $sheetData);
        }
        return $listEquipement;
    }
echo($count)//此处显示0 返回$count; }

我试图在函数
saveAll
中显示一个变量
count
,它返回0。但是,我不明白为什么对另一个表和变量
count
进行同样的操作,它只会为这个表
LRU

在Controller中,我只是执行了导入文件的功能:

$app->get('/admin/update/article', function() use ($app) {
    $parse = new ....\Parse\Parse();
    $update = new ....\DAO\ArticleDAO();
    $filePathEquipement = __DIR__ . "/../../DATA/UpdateFiles/Equipement.xlsx";
    $filePathEquipment = __DIR__ . "/../../DATA/UpdateFiles/equipment.xlsx";
    $equipement = $parse->parseEquipement($filePathEquipement);
    $equipment = $parse->parseEquipment($filePathEquipment);
    $countEquipement = $update->saveAll($equipement);
    $countEquipment = $update->saveAll($equipment);

    $stat = stat($filePathEquipement);
    $dateImport = date(d . '-' . m . '-' . Y, $stat['mtime']);
    $date = new DateUpdate(null, "Equipement", $dateImport, getdate()['mday'].'-'.getdate()['mon'].'-'.getdate()['year']);
    $dateDAO = new DateUpdateDAO();
    $dateDAO->save($date);

    $stat = stat($filePathEquipment);
    $dateImport = date(d . '-' . m . '-' . Y, $stat['mtime']);
    $date = new DateUpdate(null, "equipment", $dateImport, getdate()['mday'].'-'.getdate()['mon'].'-'.getdate()['year']);
    $dateDAO = new DateUpdateDAO();
    $dateDAO->save($date);

    $result = '<div class="alert alert-success alert-dismissable">
                    <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
                    <h4>    <i class="icon fa fa-check"></i> "LRU" update finished successfully!</h4> ' . ($countEquipement + $countEquipment) . ' Article(s) has been saved/modified.<br/>
                        ' . $countEquipement . ' --> Equipement.xlsx<br/>
                            ' . $countEquipment . ' --> equipement.xlsx
                  </div>';
    return $result;
});
$app->get('/admin/update/article',function()使用($app){
$parse=new….\parse\parse();
$update=new..\DAO\ArticleDAO();
$FilePathEquipment=\uuuuu DIR\uuuu.“/../DATA/UpdateFiles/equipment.xlsx”;
$FilePathDevice=\uuuuu DIR\uuuu.“/../DATA/UpdateFiles/device.xlsx”;
$Equipment=$parse->ParseEquipment($FilePathEquipment);
$equipment=$parse->parseEquipment($filePathEquipment);
$CountEquipment=$update->saveAll($Equipment);
$countEquipment=$update->saveAll($equipment);
$stat=stat($FilePathEquipment);
$dateImport=date(d.'-'.m.'-'.Y,$stat['mtime']);
$date=new DateUpdate(null,“设备”,$dateImport,getdate()['mday'].-'.getdate()['mon'].-'.getdate()['year']);
$dateDAO=new DateUpdateDAO();
$dateDAO->save($date);
$stat=stat($filePathEquipment);
$dateImport=date(d.'-'.m.'-'.Y,$stat['mtime']);
$date=new DateUpdate(null,“设备”,$dateImport,getdate()['mday'].-'.getdate()['mon'].-'.getdate()['year']);
$dateDAO=new DateUpdateDAO();
$dateDAO->save($date);
$result='1
&时代;
“LRU”更新已成功完成!($countEquipment+$countEquipment)。'文章已保存/修改。
“.$CountEquipment.”-->Equipment.xlsx
“.$countEquipment.”-->Equipment.xlsx '; 返回$result; });
问题是所有其他表都进行了更新,但有一个表是
LRU
,但是代码几乎与文件名相似。 请不要要求我为我工作,只要看一眼我的代码,并告诉我哪里是我的严重错误,以纠正它。根据我的小经验,我认为这是请求中的错误


谢谢。

没有人会读这堆代码。请阅读并修改相应的问题。好的,谢谢,我现在将更改它。在写下问题后,网站不允许我访问帖子:(你只能每90分钟发布一次。没有人会阅读这组代码。请阅读并相应修改问题。好的,谢谢你,我现在将更改它。在写下问题后,网站不允许我发布:(你只能每90分钟发布一次。)。
$app->get('/admin/update/article', function() use ($app) {
    $parse = new ....\Parse\Parse();
    $update = new ....\DAO\ArticleDAO();
    $filePathEquipement = __DIR__ . "/../../DATA/UpdateFiles/Equipement.xlsx";
    $filePathEquipment = __DIR__ . "/../../DATA/UpdateFiles/equipment.xlsx";
    $equipement = $parse->parseEquipement($filePathEquipement);
    $equipment = $parse->parseEquipment($filePathEquipment);
    $countEquipement = $update->saveAll($equipement);
    $countEquipment = $update->saveAll($equipment);

    $stat = stat($filePathEquipement);
    $dateImport = date(d . '-' . m . '-' . Y, $stat['mtime']);
    $date = new DateUpdate(null, "Equipement", $dateImport, getdate()['mday'].'-'.getdate()['mon'].'-'.getdate()['year']);
    $dateDAO = new DateUpdateDAO();
    $dateDAO->save($date);

    $stat = stat($filePathEquipment);
    $dateImport = date(d . '-' . m . '-' . Y, $stat['mtime']);
    $date = new DateUpdate(null, "equipment", $dateImport, getdate()['mday'].'-'.getdate()['mon'].'-'.getdate()['year']);
    $dateDAO = new DateUpdateDAO();
    $dateDAO->save($date);

    $result = '<div class="alert alert-success alert-dismissable">
                    <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
                    <h4>    <i class="icon fa fa-check"></i> "LRU" update finished successfully!</h4> ' . ($countEquipement + $countEquipment) . ' Article(s) has been saved/modified.<br/>
                        ' . $countEquipement . ' --> Equipement.xlsx<br/>
                            ' . $countEquipment . ' --> equipement.xlsx
                  </div>';
    return $result;
});