㈠ php 怎么获取内网IP
ip地址分 IPv4和IPV6两个版本。
127.0.0.1或者192.168.0.1之类的,属于IPV4的格式
127.0.0.1转换为IPv6就是 ::1
IPv6具体的格式写法,你搜索一下了解一下。
另外 ,服务端获取ip地址,是相对的。比如你在局域网内建一个服务器,在程序里获取的ip地址,就是客户端在局域网的ip ,一般是类似 192.168.0.101 之类的,大公司的话可能 10.x.x.x
局域网的ip地址,可以直接在网络适配器上看到
而在inter网,也就是大网络上,服务端获取的ip地址,是你的连网设备获取到的公网ip ,一般一个局域网内的主机,相对于因特网上的服务器,显示的都是公网地址。
公网ip没有在本机电脑上直接显示。会显示在路由或者连网设备上。也可以通过网络搜索 ip地址,会显示你的公网ip
所以,假设一个局域网内,有两台电脑同时访问一个网上的服务器,服务器是没办法给两台电脑区分开ip地址的,显示的是一样的。只是可能得到的设备信息不一样(如:浏览器的useragent)
㈡ 如何用php获取指定地址 的网页源文件
$info=file_get_contents('https://..com/question/1513631908043601820.html?entry=&ishq=1');
//info就是网页的源文件可以直接输出也可以保存
echofile_put_contents('./test.html',$info)?'保存成功':'保存失败';//保存
㈢ 如何在php中获取curl请求的请求头信息及相应头信息
oCurl=curl_init();
//设置请求头
$header[]="Content-type:application/x-www-form-urlencoded";
$user_agent="Mozilla/5.0(WindowsNT6.1)AppleWebKit/537.36(KHTML,likeGecko)Chrome/33.0.1750.146Safari/537.36";
curl_setopt($oCurl,CURLOPT_URL,$sUrl);
curl_setopt($oCurl,CURLOPT_HTTPHEADER,$header);
//返回response_header,该选项非常重要,如果不为true,只会获得响应的正文
curl_setopt($oCurl,CURLOPT_HEADER,true);
//是否不需要响应的正文,为了节省带宽及时间,在只需要响应头的情况下可以不要正文
curl_setopt($oCurl,CURLOPT_NOBODY,true);
//使用上面定义的ua
curl_setopt($oCurl,CURLOPT_USERAGENT,$user_agent);
curl_setopt($oCurl,CURLOPT_RETURNTRANSFER,1);
//不用POST方式请求,意思就是通过GET请求
curl_setopt($oCurl,CURLOPT_POST,false);
$sContent=curl_exec($oCurl);
//获得响应结果里的:头大小
$headerSize=curl_getinfo($oCurl,CURLINFO_HEADER_SIZE);
//根据头大小去获取头信息内容
$header=substr($sContent,0,$headerSize);
curl_close($oCurl);
㈣ php 怎么POST获取数据
方法1、最常见的方法是:$_POST['fieldname'];
说明:只能接收Content-Type: application/x-www-form-urlencoded提交的数据
解释:也就是表单POST过来的数据
方法2、file_get_contents("php://input");
说明:
允许读取 POST 的原始数据。
和 $HTTP_RAW_POST_DATA 比起来,它给内存带来的压力较小,并且不需要任何特殊的 php.ini 设置。
php://input 不能用于 enctype="multipart/form-data"。
解释:
对于未指定 Content-Type 的POST数据,则可以使用file_get_contents(“php://input”);来获取原始数据。
事实上,用PHP接收POST的任何数据都可以使用本方法。而不用考虑Content-Type,包括二进制文件流也可以。
所以用方法二是最保险的方法
方法3、$GLOBALS['HTTP_RAW_POST_DATA'];
说明:
总是产生 $HTTP_RAW_POST_DATA 变量包含有原始的 POST 数据。
此变量仅在碰到未识别 MIME 类型的数据时产生。
$HTTP_RAW_POST_DATA 对于 enctype="multipart/form-data" 表单数据不可用
如果post过来的数据不是PHP能够识别的,可以用 $GLOBALS['HTTP_RAW_POST_DATA']来接收,
比如 text/xml 或者 soap 等等
解释:
$GLOBALS['HTTP_RAW_POST_DATA']存放的是POST过来的原始数据。
$_POST或$_REQUEST存放的是 PHP以key=>value的形式格式化以后的数据。
但$GLOBALS['HTTP_RAW_POST_DATA']中是否保存POST过来的数据取决于centent-Type的设置,即POST数据时 必须显式示指明Content-Type: application/x-www-form-urlencoded,POST的数据才会存放到 $GLOBALS['HTTP_RAW_POST_DATA']中
㈤ php获取网页源码内容有哪些办法
可以参考以下几种方法:
方法一: file_get_contents获取
<span style="white-space:pre"></span>$url="http://www..com/";
<span style="white-space:pre"></span>$fh= file_get_contents
('http://www.hxfzzx.com/news/fzfj/');<span style="white-space:pre"></span>echo $fh;
拓展资料
PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。
用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。