recherche

Maison  >  Questions et réponses  >  le corps du texte

mysql - L'importation par lots csv thinkphp3.2 de dizaines de milliers de données signale une erreur de délai d'attente. Existe-t-il un bon moyen de résoudre ce problème ?

$filename = $_FILES['data']['tmp_name']; 
$handle = fopen($filename, 'r'); 
$result = input_csv($handle); //解析csv 
$length = count($result); 

for ($i = 0; $i < $length; $i++) {
    $ip = $result[$i][0]; 
    $port = $result[$i][1];
    //...
    $data = array(
        "ip" => $ip,
        "port" => $port,
        //...
    );
    $count = $Property->where($where)->find();
    if($count){
        $query = $Property->where($where)->save($data);
    }else{
        $query = $Property->add($data);
    }
}
fclose($result); 
$this->success('导入成功!');
exit();

Téléchargez le fichier CSV, mais une erreur est signalée après l'exécution. Merci de me donner quelques conseils
ps : Il est nécessaire de déterminer que le port IP + est unique s'il existe, il sera écrasé. , il sera ajouté.

大家讲道理大家讲道理2835 Il y a quelques jours745

répondre à tous(1)je répondrai

  • 仅有的幸福

    仅有的幸福2017-05-25 15:10:12

    Deux types, l'un consiste à définir le délai d'attente et l'autre à le convertir en SQL et enfin à l'envoyer dans la base de données pour exécution. Je recommande le second, qui a de bonnes performances

    .

    répondre
    0
  • Annulerrépondre