一、用file_get_contents函数,以post方式获取url
<php
$url= '>
$data= array('foo'=> 'bar');
$data= >
$opts= array(
'>
'method'=> 'POST',
'header'=>"Content-type: application/x->
"Content-Length: " strlen($data) "\r\n",
'content'=> $data
)
);
$ctx= stream_context_create($opts);
$html= @file_get_contents($url,'',$ctx);
二、用file_get_contents以get方式获取内容
<php
$url='>
$html= file_get_contents($url);
echo$html;
>
三、用fopen打开url, 以get方式获取内容
<php
$fp= fopen($url,'r');
$header= stream_get_meta_data($fp);//获取报头信息
while(!feof($fp)) {
$result= fgets($fp, 1024);
}
echo"url header: {$header} <br>":
echo"url body: $result";
fclose($fp);
>
四、用fopen打开url, 以post方式获取内容
<php
$data= array('foo2'=> 'bar2','foo3'=>'bar3');
$data= >
$opts= array(
'>
'method'=> 'POST',
'header'=>"Content-type: application/x->
urlencoded\r\nCookie:cook1=c3;cook2=c4\r\n"
"Content-Length: " strlen($data) "\r\n",
'content'=> $data
)
);
$context= stream_context_create($opts);
$html= fopen('>
$w=fread($html,1024);
echo$w;
>
五、使用curl库,使用curl库之前,可能需要查看一下phpini是否已经打开了curl扩展
<php
$ch= curl_init();
$timeout= 5;
curl_setopt ($ch, CURLOPT_URL, '>
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents= curl_exec($ch);
curl_close($ch);
echo$file_contents;
>
function listfile($dir)
{
$fileArray = array();
$cFileNameArray = array();
if($handle = opendir($dir))
{
while(($file = readdir($handle)) !== false)
{
if($file !="" && $file !="")
{
if(is_dir($dir DIRECTORY_SEPARATOR $file))
{
$cFileNameArray = listfile($dir DIRECTORY_SEPARATOR $file);
$fileArray = array_merge($fileArray,$cFileNameArray);
}
else
{
$fileArray[] = $dir DIRECTORY_SEPARATOR $file;
}
}
}
fclose($handle);
}
return $fileArray;
}
//这个函数是输入物理路径,得到物理路径下所有的文件路径
$dir=dirname(realpath('1php'));
//这个是假设文件名为1php时,取得当前物理路径的。
$file_list=listfile($dir);
echo '<pre>';
print_r($file_list);
echo '</pre>';
//函数调用以及显示
取得所有文件的路径之后根据你的网页文件特点写个正则表达式判断就行了,不过这获得所有路径的做法非常占资源的,最好还是少用,最适合的还是设计网站时把所有网页文件都放到同一个文件夹下就好了
感觉ls方法不好,用basename函数结合PHP_SELF便可获取当前文件的文件名,这也是discuz的写法
<php
$curfile = basename($_SERVER['PHP_SELF']);
echo $curfile;
>
读取sitemapxml我就不写了,
关键代码:
preg_match_all('/<loc>()<\/loc>/', $content, $out, PREG_PATTERN_ORDER);var_dump($out);
以上就是关于php获取指定网页内容全部的内容,包括:php获取指定网页内容、php 如何获得一个网站下面所有网页的路径、php获得当前网页的名称等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)