繁体   English   中英

我需要用最少 300 个元素解析巨大的 xml 数组,但它会变慢,我需要建议

[英]I need to parse huge xml array with min 300 elements , but it slow downs , i need advice

我正在尝试使用此代码来解析数组的 xml 元素。 使用少量元素它可以正常工作,但是当元素超过 50 时,它就会出现问题。 它会非常快地减慢速度,甚至进程会被堆栈。

$url=array('{250 domain names}')
foreach($url as $url){
    $xml = simplexml_load_file('http://data.alexa.com/data?cli=10&dat=snbamz&url='.$url);
    $rank=isset($xml->SD[1]->POPULARITY)?$xml->SD[1]->POPULARITY->attributes()->TEXT:0;
    $web=(string)$xml->SD[0]->attributes()->HOST;
    echo "$web ---> $rank<br>";
}

我需要至少 250 个域才能放入 php 阵列,但 output 得到堆栈。 有没有其他编码方法,所以 output 出现时没有减速? 提前谢谢。

正如 Barmar 指出的那样,您背靠背地执行了大量的 http 请求。 可能查看批处理 curl 请求。

https://www.php.net/manual/en/function.curl-multi-init.php

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM