2017-05-01 2 views
0

Ich habe ein Shared-Hosting Cpanel LinuxShared-Hosting CPanel linum GoDaddy

ich mit über 3000 Produkte in eine XML-Datei zu analysieren versuchen .. Ich bin einen 500 Interner Fehler bekommen, während ich es zu analysieren versuchen. . max_execution_time: 6000 memory_limit: ich durch das Armaturenbrett und "Switch to PHP-Optionen" ich habe diese Einstellungen auf "Wählen Sie die PHP-Version" gehen 512M post_max_size 128MB upload_max_filesize 512MB

meine Datei so fast 2MB ist Ich schätze das Problem ist nicht da. Die Ausführungszeit stoppt die Parsing bei 2 Minuten .. Ich habe bereits eine benutzerdefinierte Datei php.ini mit diesem innerhalb: max_execution_time: 6000 Ich habe auch versucht, eine Datei namens user.ini, mit dem gleichen Wert hochladen .. aber nichts funktioniert .. ich habe PHP-Version 5.6

der einzige Wert bei 120 (Sekunden glaube ich), ist dies: realpath_cache_ttl aber ich weiß nicht, was das ist ... Irgendwelche Ideen bitte?

* In localhost xampp, ich hatte das gleiche Problem, aber durch den Wert von max_execution_time bei 6000 zu erhöhen das Problem gelöst

Antwort

0

ok ich keine Lösung mit GoDaddy finden konnte .. Sie sagten, alles in Ordnung ist wokring in der Server .. Also habe ich versucht, eine bessere optimierte Lösung für mein Problem zu finden und fand ich die XMLReader:

$reader = new XMLReader(); 
$reader->open($product_xml_link); 
    while($reader->read()) { 
     if($reader->nodeType == XMLReader::ELEMENT && $reader->name == 'product') { 
     //..do the proccess here..whatever you want.. 
     //for example 
     $product = new SimpleXMLElement($reader->readOuterXml()); 
     $pid = $product->id; 
     $name = $product->name; 
     ... 
     ... 
} 

Es gibt viele Links, die Sie von etwa XMLReader lesen konnte, die für große XML-Dateien auch besser ist, ..

Jetzt ich könnte alle XML-Elemente in die DB ohne 500 interne Fehler einfügen. * Obwohl mein XML nicht zu groß ist .. etwa 3.500 Produkte