网站地图    收藏   

主页 > php专栏 > php上传下载 >

php常用ip转换与文件下载代码 - php上传下载

来源:自学PHP网    时间:2014-11-28 00:00 作者: 阅读:

[导读] ip转换:php中将ip转换成整型的函数ip2long()容易出现问题,在ip比较大的情况下,会变成负数,代码如下:?php$ip=192 168 1 2;$ip_n=ip2long($ip);echo$ip_n; 得到-1062731518?由于ip转换成的整...

php常用ip转换与文件下载代码

ip转换:php中将ip转换成整型的函数ip2long()容易出现问题,在ip比较大的情况下,会变成负数,代码如下:

  1. <?php 
  2. $ip = "192.168.1.2"
  3. $ip_n = ip2long($ip); 
  4. echo $ip_n;      //得到 -1062731518 
  5. ?> 

由于ip转换成的整型值太大超出了整型的范围,所以变成负数,需写成$ip_n = bindec(decbin(ip2long($ip)));这样便可得到无符号的整型数,如下代码:

  1. <?php 
  2. $ip = "192.168.1.2"
  3. $ip_n = bindec(decbin(ip2long($ip))); 
  4. echo $ip_n;      //得到 3232235778 
  5. ?> 

文件下载代码如下:

  1. <?php 
  2. header("content-type: application/force-download"); 
  3. header("content-disposition: attachment; filename=ins.jpg");  
  4. readfile("imgs/test_zoom.jpg"); 
  5. ?> 

第一行代码是强制下载;

第二行代码是给下载的内容指定一个名字;

第三行代码是把下载的内容读进文件中;

example #1 forcing a download using readfile()

  1. <?php 
  2. $file = 'monkey.gif'
  3.  
  4. if (file_exists($file)) { 
  5.     header('content-description: file transfer'); 
  6.     header('content-type: application/octet-stream'); 
  7.     header('content-disposition: attachment; filename='.basename($file)); 
  8.     header('content-transfer-encoding: binary'); 
  9.     header('expires: 0'); 
  10.     header('cache-control: must-revalidate, post-check=0, pre-check=0'); 
  11.     header('pragma: public'); 
  12.     header('content-length: ' . filesize($file)); 
  13.     ob_clean(); 
  14.     flush(); 
  15.     readfile($file); 
  16.     exit
  17. ?> 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论