都知道PHP不支持并发多任务的执行的。
但是Linux 支持啊。所以php中的扩展 pcntl_fork(); 诞生了。
foreach ($goods as $good) { $pid = pcntl_fork(); if ($pid === -1) { continue; } else if ($pid) { pcntl_wait($status, WNOHANG); } else if ($pid === 0) { ob_start(); //这里就是你要执行的任务。 $this->_updateGoods($good, $newgoodsinfo[$good['link_value']]); posix_kill(getmypid(), SIGKILL); //exit; } }
亲测,很好用。只要数据库支持多的连接,只要服务器好一点。100W 数据分分钟。