Altova Mailing List Archives>Archive Index >microsoft.public.xsl Archive Home >Recent entries >Thread Prev - Re: PHP 5, XSL transformations of big files >Thread Next - Re: PHP 5, XSL transformations of big files Re: PHP 5, XSL transformations of big filesTo: NULL Date: 5/3/2008 2:08:00 PM On May 3, 9:24 pm, "Neil Smith [MVP Digital Media]" <n...@nospam.com> wrote: > Time exceeded when uploading file content is usually related to the > client upload time required to get the content onto the server - PHP5 > uses Libxml for processing and XSL work, which is very fast. > > You should check not only the max_execution_time, but also the php.ini > setting for max_input_time, which refers to the upload duration :http://uk.php.net/manual/en/info.configuration.php#ini.max-input-time > > Those settings are distinct, separate timeouts. > > Note that if you're using the XSL extension then you're working with > DOM which creates the structure in memory - make sure you have enough > memory allocated to PHP to process the nodes in a 20MB input document. > > Another approach would be just to accept the file upload, flag the > file content as a DB record "to process" and do the processing out of > band as a scheduled task / cron job on a beefier backend server. > > HTH > Cheers - Neil > > On Sat, 3 May 2008 02:57:46 -0700 (PDT), Meglio <x.meg...@gmail.com> > wrote: > > > > >Hi. > > >I'm going to make in auto some tasks that I'm doing manually every > >day. I'm uploading big XML file (~20mb) and then I'm using XSLT schema > >to transform it to MySQL queries file. > > >I have used 3rd tools to process XSLT and it takes few seconds to > >process my big XML file. > > >But now I'm moving to PHP so I'm trying to use XSL PHP extension to > >apply my XSL file. But... it takes minutes... I allowed 10 minutes > >( set_time_limit(600) ) and it still crashes and says that time > >excited. > > >So please somebody help me to find a way out of the impasse. I can't > >move forward now because of slow XSL processing. > > >The code I'm using is: > > >******* > >// Load the XML source > >$xml = new DOMDocument; > >$xml->load('extracted/marketplace_feed_v1.xml'); > > >$xsl = new DOMDocument; > >$xsl->load('cb_marketplace_feed_compact.xsl'); > > >// Configure the transformer > >$proc = new XSLTProcessor; > >$proc->importStyleSheet($xsl); // attach the xsl rules > > >$sqlCommands = $proc->transformToXML($xml); > >if ($sqlCommands == FALSE) > >{ > > echo "XSLT transformation failed"; > > exit; > > >} > > >if (file_put_contents('cbfeed.sql', $sqlCommands) == FALSE); > >{ > > echo 'Failed to save XSLT transformation result to the file > >"cbfeed.sql"'; > > exit; > > >} > > >******* > > >You can upload files used in my script here: > > >http://megliosoft.org/meglio/cbfeed/marketplace_feed_v1.xml > >http://megliosoft.org/meglio/cbfeed/cb_marketplace_feed_compact.xsl > > >Any information may help. > > >Thanks, > >Anton > > ------------------------------------------------ > Digital Media MVP : 2004-2008http://mvp.support.microsoft.com/mvpfaqs No problem with time execution, no problem with memory limits. The problem is script execution time - it do not completed even in 10 minutes. Anton | ||||||
| Company | Legal | Press | Partners | Careers | Sitemap | Contact Us | Altova Blog | Mobile | Full Site | |||
|
