ホームページ > php教程 > php手册 > リモートファイルのサイズと情報を取得するPHP関数(ヘッダ情報取得)

リモートファイルのサイズと情報を取得するPHP関数(ヘッダ情報取得)

WBOY
リリース: 2016-06-21 08:57:32
オリジナル
1956 人が閲覧しました

機能|ファイルサイズ|リモートファイル|ヘッダー

リモートファイルのサイズと情報を取得するphp関数(ヘッダ情報取得)

Alixixi.com 開発チームが顧客システムを構築する場合、リモート ダウンロードを実装し、進行状況バーの効果をリアルタイムで表示する必要があります。

したがって、リモート ファイルのサイズ情報を事前に読み取って、リアルタイム ダウンロード プログレス バーのパラメーターとして使用する必要があります。

関数の呼び出しは非常に簡単で、getFileSize("http://www.alixixi.com/download/xml.rar") で、リモート ファイルのサイズを取得できます。

以下は引用です:
以下是引用片段:
function getFileSize($url){
$url = parse_url($url);
if($fp = @fsockopen($url[’host’],empty($url[’port’])?80:$url[’port’],$error)){
fputs($fp,"GET ".(empty($url[’path’])?’/’:$url[’path’])." HTTP/1.1rn");
fputs($fp,"Host:$url[host]rnrn");
while(!feof($fp)){
$tmp = fgets($fp);
if(trim($tmp) == ’’){
break;
}else if(preg_match(’/Content-Length:(.*)/si’,$tmp,$arr)){
return trim($arr[1]);
}
}
return null;
}else{
return null;
}
}
echo getFileSize("http://www.alixixi.com/download/xml.rar")
?>

< ? php
関数 getFileSize($url){
$url = parse_url($url)
if($fp = @fsockopen($url['host'],empty($url) [ 'ポート'])?80:$url['ポート'],$error)){
fputs($fp,"GET ".(empty($url['パス'])?'/' : $url['path'])." HTTP/1.1rn");
fputs($fp,"Host:$url[host]rnrn") ){
休憩
}else if(preg_match('/ Content-Length:(.*)/si',$tmp,$arr)){
return trim($arr[1]) }
return null ;
} この関数は、リモート ファイルのサイズの取得に非常に効果があり、リモート ファイルがどれほど大きくても、取得速度にはまったく影響しません。



関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート