必须有办法让这个PHP更快

ggw*_*icz 0 html php rss performance mobile

我正在研究www.sciencedaily.com的一个小型移动应用程序版本.只是一个小小的项目.

我正在使用RSS_PHP来获取XML提要,而我的代码(效果很好)在DOCTYPE之前看起来像这样:

require_once '_/rss_php.php';

$featuredRSS = new rss_php;
$healthMedRSS = new rss_php;
$mindBrainRSS = new rss_php;
$plantsAnimalsRSS = new rss_php;
$earthClimateRSS = new rss_php;
$spaceTimeRSS = new rss_php;
$matterEnergyRSS = new rss_php;
$compMathRSS = new rss_php;
$archaeoRSS = new rss_php;

$featuredRSS->load('http://www.sciencedaily.com/rss/top_news/top_science.xml');
$healthMedRSS->load('http://www.sciencedaily.com/rss/health_medicine.xml');
$mindBrainRSS->load('http://www.sciencedaily.com/rss/mind_brain.xml');
$plantsAnimalsRSS->load('http://www.sciencedaily.com/rss/plants_animals.xml');
$earthClimateRSS->load('http://www.sciencedaily.com/rss/earth_climate.xml');
$spaceTimeRSS->load('http://www.sciencedaily.com/rss/space_time.xml');
$matterEnergyRSS->load('http://www.sciencedaily.com/rss/matter_energy.xml');
$compMathRSS->load('http://www.sciencedaily.com/rss/computers_math.xml');
$archaeoRSS->load('http://www.sciencedaily.com/rss/fossils_ruins.xml');

$featuredItems = $featuredRSS->getItems();
$healthMedItems = $healthMedRSS->getItems();
$mindBrainItems = $mindBrainRSS->getItems();
$plantsAnimalsItems = $plantsAnimalsRSS->getItems();
$earthClimateItems = $earthClimateRSS->getItems();
$spaceTimeItems = $spaceTimeRSS->getItems();
$matterEnergyItems = $matterEnergyRSS->getItems();
$compMathItems = $compMathRSS->getItems();
$archaeoItems = $archaeoRSS->getItems();
Run Code Online (Sandbox Code Playgroud)

然后,在内容中,我通过使用经典的东西来回应结果

foreach($items as $item) {

    echo $item['title'];
}
etc...
Run Code Online (Sandbox Code Playgroud)

就像我说的,一切都很好.但是地狱很.我知道应用程序的速度会受到限制,因为它必须抓取源,但RSS_PHP没有像SimplePie那样的缓存能力.

关于提高速度的任何想法?也许首先加载精选的东西然后其他一切?

提前致谢!!

saf*_*rov 5

使用CURL库.可以同时选择多个请求.所有请求将同时并行运行.查看此链接以获取示例和教程.php curl并行请求

更新

查找有关php_rss的文档.使用

$testRSS->loadRSS($res); //$Res is string data from Curl instead of url
Run Code Online (Sandbox Code Playgroud)