有用的php函数

一 文件静态化

文件读取函式

    //文件读取函式
    function PHP_Read($file_name) {
    $fd=fopen($file_name,r);
    while($bufline=fgets($fd, 4096)){
    $buf.=$bufline;
     }
    fclose($fd);
    return $buf;
     }
  
   如果知道的是文件的连接地址的话
$fileaddress="http://localhost/filename.html";(文件所在的地址)
function PHP_Read($ fileaddress {
   if(!file_exists($fileaddress)){
       $content= "没有相关文件!";
   }else{
       $content=file_get_contents($fileaddress,filesize($fileaddress));
     //file_get_contents是将文件内容读入到一个字符串中性能最好的 两个参数分别是     文件地址和需要读取的字节数--这个可以使用filesize这个函数来确定文件的字节数
  }
  echo $content;

}




文件写入函式

    //建立目录
    $article_path="article";
    if(!file_exists($article_path)){   (目录是特殊的文件格式)
        if(!mkdir($article_path,0777)){
             exit("建立日期目录失败.");
         }
      }
    //文件写入函式
    function PHP_Write($file_name,$data,$method="wb") {
    $filenum=@fopen($file_name,$method);
    flock($filenum,LOCK_EX);//可有可无
    $file_data=fwrite($filenum,$data);(如果文件不存在会自动建立)
    flock($filenum,LOCK_UN);

    fclose($filenum);
    return $file_data;
   }
  上面的写入函数同样是可以由file_put_contents("$filename",'$contents')来代替的
静态页面生成函式

    //静态页面生成函式
    function phptohtm($filefrom,$fileto,$u2u=1){
    if($u2u==1){
    $data=PHP_Read($filefrom);
     }else{
    $data=$filefrom;
     }
    PHP_Write($fileto,$data);
    return true;
     }
二 显示客户端IP与服务器IP

    在PHP 中用 $_SERVER["REMOTE_ADDR"] 来取得客户端的 IP 地址 但如果客户端是使用代理服务器来访问 那取到的就是代理服务器的 IP 地址 要想透过代理服务器取得客户端的真实 IP 地址 就要使用 $_SERVER["HTTP_X_FORWARDED_FOR"] 来读取 但并不是每个代理服务器都能用
$_SERVER["HTTP_X_FORWARDED_FOR"] 来读取客户端的真实 IP 有些用此方法读取到的仍然是代理服务器的 IP 


if(getenv('HTTP_CLIENT_IP'))   {//如果得到客户端的ip   就把客户端的ip付给$onlineid  
  $onlineip   =   getenv('HTTP_CLIENT_IP');  
  }   elseif(getenv('HTTP_X_FORWARDED_FOR'))   {//如果透过网关(代理)取得客户端IP  
   
  $onlineip   =   getenv('HTTP_X_FORWARDED_FOR');  
  }   elseif(getenv('REMOTE_ADDR'))   {//如果取得游览当前页面的用户计算机的ip地址  
   
  $onlineip   =   getenv('REMOTE_ADDR');  
  }   else   {//其它的话就是由HTTP服务器传递给当前脚本的变量所含的(也就是默认的ip)付给他  
  $onlineip   =   $HTTP_SERVER_VARS['REMOTE_ADDR'];  
  }  

    取得客户端ip的函数  $_SERVER['ROMOTE_ADDR']
    取得服务器端ip的函数  $_SERVER['SERVER_ADDR']

三 $_SERVER预定义变量详解

http://www.haoq.com/test.php?action=a&type=b

$_SREVER['PHP_SELF
']=/test.php
$_SREVER['SCRIPT_NAME ']=/test.php
$_SREVER['SCRIPT_URL ']=/test.php    //根路径后的
$_SREVER['SCRIPT_URI ']= http://www.haoq.com/test.php
$_SREVER['QUERY_STRING ']=action=a&type=b

 

四 函数归纳

 

1 date_default_timezone_set('Asia/Shanghai');  设定时区

2 set_include_path  设定需要导入文件的路径,参见zendframework,中的应用

set_include_path('.' .PATH_SEPARATOR .'./library'.PATH_SEPARATOR .'./application/models/'.PATH_SEPARATOR .get_include_path());

3 get_object_vars 返回由对象属性呢组成的关联数组

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值