php – 同时执行三个功能

我有三个这样的函数sript PHP

public function a($html,$text)
{
    //blaa
return array();
}
public function b($html,$text){
    //blaa
return array();
}
public function c($html,$text){
    //blaa
return array();
}
require_once 'simple_html_dom.PHP';
$a=array();
$html=new simple_html_dom();
$a=$this->a($html,$text);
$b=$this->b($html,$text);
$c=$this->c($html,$text);
$html->clear();
unset($html);
$a=array_merge($a, $c);
$a=array_merge($a, $b);

> a($html,$text)在给出结果之前需要5秒
> b($html,$text)在给出结果之前需要10秒
> c($html,$text)在给出结果之前需要12秒

因此系统需要27秒才能给我一个结果,但我希望在12秒内获得结果.我不能使用线程,因为我的托管不支持线程.我怎么解决这个问题?

解决方法:

如果等待时间是由阻塞IO(等待服务器响应)引起的,那么curl_multi可能有所帮助.

但是,根据您发布的代码,它看起来不像是您的问题.

它看起来更像是简单的html dom花了很长时间来解析你的HTML.这并不太令人惊讶,因为它不是一个非常好的图书馆.如果是这种情况,您应该考虑切换到DomXPath.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...