src/ImportAbstract.php
private function insertData()
    {
        /*
         * Parcours de données à insérer
         */
        $nbRows = count($this->rows);
        $nbColumnsToInsert = count($this->getRows(0));
        
        $blankFields = ($this->nbFields - $nbColumnsToInsert) ? array_fill(0, $this->nbFields - $nbColumnsToInsert, null) : [];
        
        
        // On coupe le tableau pour ne garder que les champs nécessaires
        $fieldsToInsert = $this->getFields(); //array_slice($this->getFields(), 0, $nbColumnsToInsert);
        
        $nbPlugins = count($this->getPlugins());
        
        for ($i = 0; $i < $nbRows; $i++) {
            /*
             * Valeurs lues
             */
            $row = $this->getRows($i);
            
            /*
             * Ajout des champs supplémentaires
             */
            $row = array_merge_recursive($row, $blankFields);
            
            /*
             * Creation du tableau associatif pour les plugins
             */
            $values = array_combine($fieldsToInsert, $row);
            
            /*
             * Application des plugins
             */
            for ($ip = 0; $ip < $nbPlugins; $ip++) {
                $callable = $this->getPlugins($ip);
                if (is_callable($callable)) {
                    $values = call_user_func($callable, $values);
                }
            }
            
            /*
             * Rewrite array with blackquote
             */
            $valuesToInsert = [];
            foreach ($values as $key => $value) {
                $valuesToInsert["`$key`"] = $value;
            }
            
            try {
                $this->db->insert($this->getTable()->getName(), $valuesToInsert);
            } catch (Exception $ex) {
                throw new Exception("Erreur d'insertion dans la base, merci de vérifier l'affectation des valeurs dans les colonnes", self::IMPORT_BAD_FORMAT);
            }
        }
        
        return $this;
    }
private function insertData()
    {
        /*
         * Parcours de données à insérer
         */
        $nbRows = count($this->rows);
        $nbColumnsToInsert = count($this->getRows(0));
        
        $blankFields = ($this->nbFields - $nbColumnsToInsert) ? array_fill(0, $this->nbFields - $nbColumnsToInsert, null) : [];
        
        
        // On coupe le tableau pour ne garder que les champs nécessaires
        $fieldsToInsert = $this->getFields(); //array_slice($this->getFields(), 0, $nbColumnsToInsert);
        
        $nbPlugins = count($this->getPlugins());
        
        for ($i = 0; $i < $nbRows; $i++) {
            /*
             * Valeurs lues
             */
            $row = $this->getRows($i);
            
            /*
             * Ajout des champs supplémentaires
             */
            $row = array_merge_recursive($row, $blankFields);
            
            /*
             * Creation du tableau associatif pour les plugins
             */
            $values = array_combine($fieldsToInsert, $row);
            
            /*
             * Application des plugins
             */
            for ($ip = 0; $ip < $nbPlugins; $ip++) {
                $callable = $this->getPlugins($ip);
                if (is_callable($callable)) {
                    $values = call_user_func($callable, $values);
                }
            }
            
            /*
             * Rewrite array with blackquote
             */
            $valuesToInsert = [];
            foreach ($values as $key => $value) {
                $valuesToInsert["`$key`"] = $value;
            }
            
            try {
                $this->db->insert($this->getTable()->getName(), $valuesToInsert);
            } catch (Exception $ex) {
                throw new Exception("Erreur d'insertion dans la base, merci de vérifier l'affectation des valeurs dans les colonnes", self::IMPORT_BAD_FORMAT);
            }
        }
        
        return $this;
    }
Insert des données
@return $this
@throws Exception