PHP script varsayalım değilken çalışmaya devam

0 Cevap php

Ben insanlar çalışmıyor komut dosyaları hakkında genellikle şikayet biliyorum, ama burada ben bunu durdurmak istiyorsanız bile çalışmaya devam eder bir durumdur.

Ben hatları analiz eder ve bir DB tablo girdileri ekler bir CSV ayrıştırıcı var. Ben proje için PDO ve Zend framwork kullanıyorum. Kod aslında çok güzel .. gayet iyi çalışıyor.

public function save()
{
    $memory_limit = ini_get('memory_limit');
    ini_set('memory_limit', '512M');

    $sql = "
        INSERT INTO my_table (
            date_start,
            timeframe,
            type,
            country_to,
            country_from,
            code,
            weight,
            value               
        ) VALUES (?,?,?,?,?,?,?,?)
        ON DUPLICATE KEY UPDATE 
            weight = VALUES(weight),
            value = VALUES(value)
    ";
    if ($this->test_mode) {
        echo $sql;
        return;
    }
    $stmt = new Zend_Db_Statement_Pdo($this->_db, $sql);
    foreach($this->parsed_data as $entry){
        $stmt->execute(array_values($entry));
        $affected_rows = $stmt->rowCount();
        if ($affected_rows){
            $this->_success = true;
        }
    }
    unset($this->parsed_data, $stmt, $sql);
    ini_set('memory_limit', $memory_limit);
}

Komut Ben büyük bir dosya ayrıştırma am olarak tamamlamak için çeşitli saniye sürer. Ben senaryoyu durdurmaya çalışıyorum zaman sorun ESC ile hatta sayfasını kapatarak, görünür. Tüm girdileri eklemek için bitirene kadar komut durmuyor. Hatta bir Apache yeniden muhtemelen bir yeniden başlatma yapacak, bu tespit değildir.

Bu normal bir davranış olmadığını düşünüyorum ve ben önerileriniz için soruyorum belki ben yanlış bir şey yapıyorum.

Teşekkürler.

UPDATE ignore_user_abort is off (default behaviour) so user abort should be considered..

0 Cevap