Ben XML dosyaları bir çift ayrıştırmak ve benim mysql veritabanında ilgili verileri eklemek gerekir CakePHP'ye bir proje ile meşgulüm. Senaryo böyle sorun değil, bu eklemek gerektiğini ekler. Ben bir veya 2 dosya (yaklaşık 7000-8000 kayıtları) ayrıştırmak Örneğin, hiçbir şey yanlış gider.
Ben üçüncü veya dördüncü xml dosyasını ayrıştırmak zaman sorunlar başlar. Bir dakika yerleştirme kayıtları sonra başarıyla veritabanına eklenen 9000-10000 kayıtlar vardır görmek, ama aniden senaryo kendi kendini yeniden başlatır gibi görünüyor. Ben 0 kayıt tablosunda mevcut fark ve tüm kayıtları ekleme yeniden başlatır. Yani komut sadece çalıştırmak için yaş alıyor.
Kısa pasajı:
$content = simplexml_load_file($file);
/**
* Process line per line
*/
foreach ($content->product as $line) {
// create new record in products database table
$product = array();
$product['Product']['productid'] = $line->attributes()->sku_number;
$product['Product']['name'] = $line->attributes()->name;
$product['Product']['description'] = empty($line->description->long) ? $line->description->short : $line->description->long;
$product['Product']['link'] = $line->URL->product;
$product['Product']['affiliate'] = 'linkshare';
$product['Product']['price'] = $line->price->retail;
$product['Product']['brand'] = strtolower($line->brand);
$product['Product']['image'] = $line->URL->productImage;
// if not in rejectedproducts, save the new product to the database
if (!$rejectedproductModel->findByProductid($product['Product']['productid'])) {
$productModel->create();
$productModel->save($product);
}
Birileri bu deneyimi var mı? Ne nedeni olabilir ve daha ne bir çözüm olabilir :)
Teşekkürler