很多站长朋友们都不太清楚php解析其他网页,今天小编就来给大家整理php解析其他网页,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php怎么抓取其它网站数据 2、 如何让php解析jps网页? 3、 php中使用parse_url()对网址进行解析的实现代码(parse_url详解) php怎么抓取其它网站数据可以用以下4个方法来抓取网站 的数据:
1. 用 file_get_contents 以 get 方式获取内容:
?
$url = '';
$html = file_get_contents($url);
echo $html;
2. 用fopen打开url,以get方式获取内容
?
$url = '';
$fp = fopen($url, 'r');
stream_get_meta_data($fp);
$result = '';
while(!feof($fp))
{
$result .= fgets($fp, 1024);
}
echo "url body: $result";
fclose($fp);
3. 用file_get_contents函数,以post方式获取url
?
$data = array(
'foo'=>'bar',
'baz'=>'boom',
'site'=>'',
'name'=>'nowa magic');
$data = http_build_query($data);
//$postdata = http_build_query($data);
$options = array(
'http' => array(
'method' => 'POST',
'header' => 'Content-type:application/x-www-form-urlencoded',
'content' => $data
//'timeout' => 60 * 60 // 超时时间(单位:s)
)
);
$url = "";
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
echo $result;
4、使用curl库,使用curl库之前,可能需要查看一下php.ini是否已经打开了curl扩展
$url = '';
$ch = curl_init();
$timeout = 5;
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents = curl_exec($ch);
curl_close($ch);
echo $file_contents;
如何让php解析jps网页?如果你用的apache 修改conf/httpd.conf <FilesMatch "\.php|\.jps$">
SetHandler application/x-httpd-php
</FilesMatch>
php中使用parse_url()对网址进行解析的实现代码(parse_url详解)PHP
解析
URL函数:
parse_url详解
parse_url
—
解析
URL,返回其组成部分
说明
array
parse_url
(
string
$url
)
本函数解析一个
URL
并返回一个关联数组,包含在
URL
中出现的各种组成部分。
本函数不是用来验证给定
URL
的合法性的,只是将其分解为下面列出的部分。不完整的
URL
也被接受,parse_url()
会尝试尽量正确地将其解析。
参数
url
要解析的
URL
返回值
对严重不合格的
URL,parse_url()
可能会返回
FALSE
并发出
E_WARNING。否则会返回一个关联数组,其组成部分为(至少有一个):
scheme
–
如
http
host
port
user
pass
path
query
–
在问号
?
之后
fragment
–
在散列符号
#
之后
范例
parse_url()
例子
复制代码
代码如下:
<?php
$url
=
'';
print_r(parse_url($url));
?>
以上例程会输出:
Array
(
[scheme]
=>
http
[host]
=>
hostname
[user]
=>
username
[pass]
=>
password
[path]
=>
/path
[query]
=>
arg=value
[fragment]
=>
anchor
)
常常我们会传送一大串网址,然后要解析的话,只能不断地去切token来解析。但是在php中,一定要学会使用前人所写过的函式,这样开发速度才会快别人一截。当然,要解析网址的话,就得去找相关的指令,而今天要介绍的,就是php中的parse_url这个函式。
这个函式主要是用来解析网址,而首先先看一下这个函式原型,其官方描述如下:
mixed
parse_url
(
string
$url
[,
int
$component=
-1
]
)
而php官方举了一个例子,而我将他扩充如下,以方便讲解。
复制代码
代码如下:
<?php
$url
=
';arg2=value2#anchor';
print_r(parse_url($url));
?>
首先,先看一下这个程式的输出结果
Array
(
[scheme]
=>
http
[host]
=>
hostname
[user]
=>
username
[pass]
=>
password
[path]
=>
/path
[query]
=>
arg1=value1arg2=value2
[fragment]
=>
anchor
)
其中,scheme是指他走的路线,而host则是站台网址,user则是使用者名称,pass则是密码,path则是路径,query则是参数,fragment则是锚点。
而在「$component」的部份,则是有以下的参数可供传递。
PHP_URL_SCHEME
PHP_URL_HOST
PHP_URL_USER
PHP_URL_PASS
PHP_URL_PATH
PHP_URL_QUERY
PHP_URL_FRAGMENT
而这几个参数则分别代表了Array中的scheme、host、user、pass、path、query和fragment。
同样,举例来说,如果使用PHP_URL_PATH和PHP_URL_QUERY来说,以下为他的示范。
复制代码
代码如下:
<?php
$url
=
';arg2=value2#anchor';
echo
nl2br(parse_url($url,
PHP_URL_PATH)."\n");
echo
nl2br(parse_url($url,
PHP_URL_QUERY)."\n");
?>
而输出结果将如下:
/path
arg1=value1arg2=value2
关于php解析其他网页的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php解析其他网页 php解析接口的详细内容...