易截截图软件、单文件、免安装、纯绿色、仅160KB

php下载文件代码

一般的文件安全下载方法可以使用下面的代码:
1. <?php?
2.
3. $durl = 'file/phpcms2008_o2abf32efj883c91a.iso';
4. $filename = 'phpcms2008_o2abf32efj883c91a.iso';
5. $file = @fopen($durl, 'r');
6. header("Content-Type: application/octet-stream");
7. header("Accept-Ranges: bytes");
8. header("Accept-Length: ".filesize($durl));
9. header("Content-Disposition: attachment; filename=".$filename);
10. echo fread($file,filesize($durl));
11. fclose($file);
12. ?>
但是文件一大(超过php.ini配置的内存最大值),这里就出问题了,服务器会非常占用CPU资源,更重要的是文件不能正常下载,只能下载几十Kb的文件,明显不是预期想要的。
1. function download($url, $filename) {
2.
3. // 获得文件大小, 防止超过2G的文件, 用sprintf来读
4. $filesize = sprintf ( "%u", filesize ( $url ) );
5. if (! $filesize) {
6. return;
7. }
8. header ( "Content-type:application/octet-stream\n" ); //application/octet-stream
9. header ( "Content-type:unknown/unknown;" );
10. header ( "Content-disposition: attachment; filename=\"" . $filename . "\"" );
11. header ( 'Content-transfer-encoding: binary' );
12. if ($range = getenv ( 'HTTP_RANGE' )) { // 当有偏移量的时候,采用206的断点续传头
13. $range = explode ( '=', $range );
14. $range = $range [1];
15.
16. header ( "HTTP/1.1 206 Partial Content" );
17. header ( "Date: " . gmdate ( "D, d M Y H:i:s" ) . " GMT" );
18. header ( "Last-Modified: " . gmdate ( "D, d M Y H:i:s", filemtime ( $url ) ) . " GMT" );
19. header ( "Accept-Ranges: bytes" );
20. header ( "C


相关文档:

PHP开发环境搭建windows

在Windows中配置PHP环境 phpnow在Windows下配置环境很是方便,但是兼容并不是很好,有些时候我们还需要手动在Windows配置PHP环境,手动配置又很麻烦经常忘记配置步骤。所以今天特意记录配置过程。 首先我们需要下载: apache的官方下载地址: http://httpd.apa
  
在Windows中配置PHP环境
phpnow在Windows下配置环境很是 ......

配置PHP开发环境

配置PHP开发环境,这是老掉牙的问题了,在网络上一找一大堆。
不过看来看去,头都晕了。还是选定一个文摘好好实践下,若安装成功的话记下来以便以后重装有用处。
最终花了一个下午终于配置好了,够折磨人的说,不过学到很多了。
xp环境
mysql5.0.22
php5.3.2 win32-VC6-x86.zip
httpd2.2.15 win32.msi
phpmyadmin3.3 ......

PHP函数(2)

in_array(value,array,type)        //检查一个值是否在数组中,type可选,设置为true检查类型是否相同,分大小写
例:
$os = array("Mac", "NT", "Irix", "Linux");
if (in_array("Irix", $os)) {
echo "Got Irix"; ......

php 安全模式的不足

PHP的safe_mode选项的目的是为了解决本章所述的某些问题。
但是,在PHP层面上去解决这类问题从架构上来看是不正确的,正如PHP手册所述(http://php.net/features.safe-mode)。
当安全模式生效时,PHP会对正在执行的脚本所读取(或所操作)文件的属主进行检查,以保证与该脚本的属主是相同的。
虽然这样确实可以防范本章中 ......

PHP加密解密内部算法

http://www.dedecms.com/knowledge/program/php/2009/0929/51.html
来源:PHP100 作者:PHP100er 发表于:2009-09-29 11:05  点击:
2363
最近学习URL跳转的时候新进三个超好用的PHP加密解密函数,貌似是discuz里的使用这些加密解密的原因是因为有时自己的URL地址被人获取以后想破解你里面传值的内容就必须知道你的key, ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号