本文目录一览:
1、怎么用php读取并显示另一个php文件的内容?
2、怎么才能让windows 直接搜索 php或者其他文件格式中包含的内容?
3、如何在php中调用其他php生成的内容?
4、php中有几种方法引用另一个php文件?又有什么区别?
怎么用php读取并显示另一个php文件的内容?
示例代码1: 用file_get_contents 以get方式获取内容
代码如下:
?php
$url='';
$html=file_get_contents($url);
//print_r($http_response_header);
ec($html);
printhr();
printarr($http_response_header);
printhr();
?
示例代码2: 用fopen打开url, 以get方式获取内容
代码如下:
?
$fp=fopen($url,'r');
printarr(stream_get_meta_data($fp));
printhr();
while(!feof($fp)){
$result.=fgets($fp,1024);
}
echo"url body:$result";
printhr();
fclose($fp);
?
示例代码3:用file_get_contents函数,以post方式获取url
代码如下:
?php
$data=array('foo'='bar');
$data=http_build_query($data);
$opts=array(
'http'=array(
'method'='POST',
'header'="Content-type: application/x-www-form-urlencodedrn".
"Content-Length: ".strlen($data)."rn",
'content'=$data
),
);
$cOntext=stream_context_create($opts);
$html=file_get_contents('',false,$context);
echo$html;
?
示例代码4:用fsockopen函数打开url,以get方式获取完整的数据,包括header和body
代码如下:
?
functionget_url($url,$COOKIE=false){
$url=parse_url($url);
$query=$url[path]."?".$url[query];
ec("Query:".$query);
$fp=fsockopen($url[host],$url[port]?$url[port]:80,$errno,$errstr,30);
if(!$fp){
returnfalse;
}else{
$request="GET$queryHTTP/1.1rn";
$request.="Host:$url[host]rn";
$request.="Connection: Closern";
if($COOKIE)$request.="COOKIE:$COOKIEn";
$request.="rn";
fwrite($fp,$request);
while(!@feof($fp)){
$result.=@fgets($fp,1024);
}
fclose($fp);
return$result;
}
}
//获取url的html部分,去掉header
functionGetUrlHTML($url,$COOKIE=false){
$rowdata=get_url($url,$COOKIE);
if($rowdata)
{
$body=stristr($rowdata,"rnrn");
$body=substr($body,4,strlen($body));
return$body;
}
returnfalse;
}
?
示例代码5:用fsockopen函数打开url,以POST方式获取完整的数据,包括header和body
代码如下:
?
functionHTTP_Post($URL,$data,$COOKIE,$referrer=""){
// parsing the given URL
$URL_Info=parse_url($URL);
// Building referrer
if($referrer=="")// if not given use this script. as referrer
$referrer="111";
// making string from $data
foreach($dataas$key=$value)
$values[]="$key=".urlencode($value);
$data_string=implode("",$values);
// Find out which port is needed - if not given use standard (=80)
if(!isset($URL_Info["port"]))
$URL_Info["port"]=80;
// building POST-request:
$request.="POST ".$URL_Info["path"]." HTTP/1.1n";
$request.="Host: ".$URL_Info["host"]."n";
$request.="Referer:$referern";
$request.="Content-type: application/x-www-form-urlencodedn";
$request.="Content-length: ".strlen($data_string)."n";
$request.="Connection: closen";
$request.="COOKIE:$COOKIEn";
$request.="n";
$request.=$data_string."n";
$fp=fsockopen($URL_Info["host"],$URL_Info["port"]);
fputs($fp,$request);
while(!feof($fp)){
$result.=fgets($fp,1024);
}
fclose($fp);
return$result;
}
printhr();
?
示例代码6:使用curl库,使用curl库之前,你可能需要查看一下php.ini,查看是否已经打开了curl扩展
代码如下:
?
$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;
?
关于curl库:
curl官方网站
curl 是使用URL语法的传送文件工具,支持FTP、FTPS、HTTP HTPPS SCP SFTP TFTP TELNET DICT FILE和LDAP。curl 支持SSL证书、HTTP POST、HTTP PUT 、FTP 上传,kerberos、基于HTT格式的上传、代理、COOKIE、用户+口令证明、文件传送恢复、http代理通道和大量其他有用的技巧
代码如下:
?
functionprintarr(array$arr)
{
echo"br Row field count: ".count($arr)."br";
foreach($arras$key=$value)
{
echo"$key=$value br";
}
}
?
怎么才能让windows 直接搜索 php或者其他文件格式中包含的内容?
(1)windows里面直接搜索:
(以xp为例)
“要搜索的文件或文件夹名为:” 填 *.php
“包含文字” 填 百度
“搜索范围” 可以直接输入文件夹名 如: d:\wwwroot
(2)用废客文件查找专家,很快的。这里下载:
如何在php中调用其他php生成的内容?
PHP 中的 include、require 函数可以实现
include (或 require)语句会获取指定文件中存在的所有文本/代码/标记,并复制到使用 include 语句的文件中。
包含文件很有用,如果您需要在网站的多张页面上引用相同的 PHP、HTML 或文本的话。
PHP include 和 require 语句
通过 include 或 require 语句,可以将 PHP 文件的内容插入另一个 PHP 文件(在服务器执行它之前)。
include 和 require 语句是相同的,除了错误处理方面:
require 会生成致命错误(E_COMPILE_ERROR)并停止脚本
include 只生成警告(E_WARNING),并且脚本会继续
因此,如果您希望继续执行,并向用户输出结果,即使包含文件已丢失,那么请使用 include。否则,在框架、CMS 或者复杂的 PHP 应用程序编程中,请始终使用 require 向执行流引用关键文件。这有助于提高应用程序的安全性和完整性,在某个关键文件意外丢失的情况下。
包含文件省去了大量的工作。这意味着您可以为所有页面创建标准页头、页脚或者菜单文件。然后,在页头需要更新时,您只需更新这个页头包含文件即可。
例如:
html
body
h1欢迎访问我们的首页!/h1
?php require 'header.php';?
p一段文本。/p
p一段文本。/p
?php include 'footer.php';?
/body
/html
php中有几种方法引用另一个php文件?又有什么区别?
有两种方法引用另一个php文件。
PHP包括并要求语句。
使用include或require语句,您可以将PHP文件的内容插入另一个PHP文件(在服务器执行该文件之前)。
除了错误处理外,包括和要求语句是相同的:
需要产生一个致命错误(E_COMPILE_ERROR)并停止脚本。
只包括生成警告(E_WARNING),脚本将继续执行。
因此,如果您想继续执行并输出结果给用户,即使包含的文件丢失,也要使用include。否则,在框架、CMS或复杂的PHP应用程序编程中,总是需要将密钥文件引用到执行流。这有助于提高应用程序的安全性和完整性,当一个密钥文件意外丢失时。
包括文件保存了大量的工作。这意味着您可以为所有页面创建标准的页眉、页脚或菜单文件。然后,当您需要更新header时,您只需要更新头文件就可以包含该文件。