<?php
الدالة get_url_content($Url,$Method = 'c') {
// قدم ترميز اللغة المطلوب إذا لم يكن الأمر كذلك، فسيتم تعيينه افتراضيًا على utf-8، فلا تقلق.
عالمي $ Charset؛
$Urlarr = parse_url($Url);
// إذا تعذر اكتشاف اسم المجال، فارجع.
إذا (!isset($Urlarr['host'])) {
عودة كاذبة.
}
// نحدد معلومات الرأس المتعددة بطريقة ذكية.
foreach (@getallheaders() كـ $key => $val){
$key==='Host' && $val = $Urlarr['host'];
$key==='Referer' && $val ='http://'.$Urlarr['host'];
$str .= "'$key:$val', n";
}
// الأصل الظاهري.
!eregi('Referer',$str) && $str .="'Referer:http://{$Urlarr['host']}', n";
// بعد التصحيح، المصدر هو أيضًا هذا الموقع، والمضيف هو أيضًا موقع URL.
$Header = array(trim($str));
// ما يلي هو فقط اختيار البرنامج الذي سيتم استخدامه للتجميع.
إذا($Method === 'f'&&function_exists('file_get_contents')) {
خيارات $ = صفيف (
'http'=>مصفوفة(
'الطريقة'=>"الحصول على"،
'الرأس'=>الرأس $،
)
);
$cxContext =stream_context_create($opts);
$file_contents = @file_get_contents($Url, false, $cxContext);
} elseif ($Method === 'c'&&function_exists('curl_init')) {
$Ch = curl_init();
مهلة $ = 5؛
curl_setopt($Ch,CURLOPT_HTTPHEADER,$Header);
curl_setopt ($Ch, CURLOPT_URL, $Url);
curl_setopt ($Ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt ($Ch، CURLOPT_CONNECTTIMEOUT، $Timeout)؛
$file_contents = curl_exec($Ch);
تجعيد_إغلاق($Ch);
}
// من أجل جعل النمط يظهر بشكل جميل، أضفنا دليل الهدف إليه.
$file_contents = str_replace('</title>',"</title>n<base href=" http://{$Urlarr['host']}/ " />",$file_contents);
// معالجة الترميزات الأكثر شيوعًا إذا لم يكن موقع الويب المستهدف يحتوي على تشفير، فسيتم تعيينه افتراضيًا على GBK.
!preg_match('/charset=([^<>"]*)"/isU',$file_contents,$lang) && $lang[1]='GBK';
function_exists('mb_convert_encoding') && $file_contents = mb_convert_encoding($file_contents,empty($Charset)?'UTF-8':$Charset,$lang[1]);
// تسجيل الخروج من جزء من الكود؛
unset($Url,$lang,$Timeout,$Urlarr,$Charset);
إرجاع $file_contents؛
}
// ابدأ الاختبار باستخدام طريقة file_get_contents
HEADER("CONTENT-TYPE:TEXT/HTML; CHARSET=UTF-8");
//http://www.xtzj.com/read-htm-tid-347550.html لا يمكن جمع هذا.
$file = get_url_content(" http://www.hao123.com",'f' );
$file = strip_tags($file,'<a>');
preg_match_all('/(http:[^"<>]*)>/isU',$file,$link);unset($link[0]);
$link = $link[1];
// دعنا نحاكي الحصول على البيانات بنفسك 0-151.
$س = 10؛
$file = get_url_content($link[$x]);
صدى ملف $؛
?>
اكتب جميع الشروحات والتعليقات
إذا كان هناك أي ردود لم تفهمهاسأنشر المعرفة حول المجموعة