file_get_content设置超时时间
php cli没有超时时间,可以设置curl请求时间
protected function downloadFile($url)
{
$baseName = basename($url);
$baseName = explode('?', $baseName)[0];
if (!file_exists(__DIR__ . '/../../../public/record/' . date('Ymd'))) { //需要先判断文件夹是否存
mkdir(__DIR__ . '/../../../public/record/' . date('Ymd'), 0777, true);
}
$saveUrl = "/record/" . date('Ymd') . '/' . $baseName;
$path = __DIR__ . '/../../../public' . $saveUrl;
$ctx=stream_context_create([
'http'=>[
'timeout'=>20//等待10秒
]
]);
$record = file_get_contents($url,0,$ctx);
file_put_contents($path, $record);
return $saveUrl;
}