php实现下载限制速度示例分享

复制代码 代码如下:

// local file that should be send to the client
$local_file = 'test-file.zip';

// filename that the user gets as default
$download_file = 'your-download-name.zip';

// set the download rate limit (=> 20,5 kb/s)
$download_rate = 20.5;

if(file_exists($local_file) && is_file($local_file)) {

 // send headers
 header('Cache-control: private');
 header('Content-Type: application/octet-stream');
 header('Content-Length: '.filesize($local_file));
 header('Content-Disposition: filename='.$download_file);

 // flush content
 flush();

 // open file stream
 $file = fopen($local_file, "r");

 while (!feof($file)) {

 // send the current file part to the browser
 print fread($file, round($download_rate * 1024));

 // flush the content to the browser
 flush();

 // sleep one second
 sleep(1);
 }

 // close file stream
 fclose($file);

}

else {
 die('Error: The file '.$local_file.' does not exist!');
}

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。

php调用C代码的实现方法 - 2015-04-19 09:04:09

在php程序中需要用到C代码,应该是下面两种情况: 1 已有C代码,在php程序中想直接用 2 由于php的性能问题,需要用C来实现部分功能 针对第一种情况,最合适的方法是用system调用,把现有C代码写成一个独立的程序。参数通过命令行或者标准输入传入,结果从标准输出读出。其次,稍麻烦一点的方法是C代码写成一个daemon,php程序用socket来和它进行通讯。 重点讲讲第二种情况,虽然沿用system调用的方法也可以,但是想想你的目的是优化性能,那么频繁的起这么多进程,当然会让性能下降。而写daem
# JS 调用函数传递可变参数的方法 复制代码 代码如下: script function test() { for(var i = 0;i arguments.length; i++) { alert(arguments[i]); } } //调用函数 test(1, 2, 3, 'abc'); /script # PHP 调用函数传递可变参数的方法 复制代码 代码如下: ?php //方法一 //接收一系列参数,并逐一输出 function show_params () { //获取传递参数的个数 $c
升级 VPS 后,由于 Ubuntu 的 upstart 与 OpenVZ 的兼容问题,导致 sshd 服务不自动启动了,在尝试了 vePortal 的 console 与 file manager 及提交技术支持后都不能解决问题之后。 只能靠自己了,大概的思路是在 PHP 中进行 su 命令以执行 sshd 服务,因为 WordPress 还活着,并且可以在后台直接编辑主题相关的 PHP 脚本。只要把准备好的代码片断插入到 header.php 中,并在浏览器中访问一下主页即可。 相关的代码逻辑 1.
分享一个php获取从百度搜索进入网站的关键词的代码,有需要的朋友可以参考一下: 代码: 复制代码 代码如下: ?php function search_word_from() { $referer = isset($_SERVER['HTTP_REFERER'])?$_SERVER['HTTP_REFERER']:''; if(strstr( $referer, 'baidu.com')){ //百度 preg_match( "|baidu.+wo?r?d=([^\\]*)|is", $referer, $
图片裁剪是指在一个大的背景图片中裁剪出一张指定区域的图片,常见的应用是在用户设置个人头像时,可以从上传的图片中,裁剪出一个合适的区域作为自己的个人头像图片。图像裁剪和图片缩放的相似,所以也是借助imagecopyresampled()函数去实现这个功能。同样也是以JPEG图片格式为例,声明一个图像裁剪函数cut(),代码如下所示: 复制代码 代码如下: ?php //在一个大的背景图片中裁剪出指定区域的图片,以jpeg图片格式为例 function cut($filename,$x,$y,$width,$
本文实例讲述了php中static静态属性和静态方法的调用。分享给大家供大家参考。具体如下: 这里分析了php面向对象中static静态属性和静态方法的调用。关于它们的调用(能不能调用,怎么样调用),需要弄明白了他们在内存中存放位置,这样就非常容易理解了。静态属性、方法(包括静态与非静态)在内存中,只有一个位置(而非静态属性,有多少实例化对象,就有多少个属性)。 实例: ?phpheader("content-type:text/html;charset=utf-8");class Human{ stat
本文实例讲述了PHP计算指定日期所在周的开始和结束日期的方法。分享给大家供大家参考。具体实现方法如下: htmlheadtitle计算一周开始结束日期/title/headbodyform method="post" action="./index.html" enctype="utf-8"table trtd输入年份/td tdinput name="year" type="text" maxlength="4" //td /tr trtd输入月份/td tdinput name="month" typ

PHP中的string类型使用说明 - 2015-04-19 06:04:34

注意:PHP没有对string的长度做限制。唯一限制的就是PHP在计算机中的可用内存(php.ini文件中的memory_limit变量的值) 限定字符串范围的方法有4中: 1、单引号; 2、双引号; 3、原型文档语法; 4、nowdoc syntax(PHP5.3.0开始) 1、如果字符串使用单引号“‘”包裹,字符串中如果出现单引号“,”和反斜杠“\”符号,需要进行转义。 复制代码 代码如下: // Outputs: Arnold once said: "I'll be back" echo 'Arnol

Laravel5中contracts详解 - 2015-04-19 06:04:34

我们先来看看官方文档中对contracts的定义: Laravel's Contracts are a set of interfaces that define the core services provided by the framework. 意思是说Laravel的Contracts是一个由 框架提供 的定义了 核心服务接口 的集合。 也就是说,每一个Contract都是一个接口,对应一个框架核心服务。 那它的意义何在?官网给出的解释也很简单:使用接口是为了 松耦合 和 简单 。 先不讲大道理
复制代码 代码如下: //php获取今日开始时间戳和结束时间戳 $beginToday=mktime(0,0,0,date('m'),date('d'),date('Y')); $endToday=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1; //php获取昨日起始时间戳和结束时间戳 $beginYesterday=mktime(0,0,0,date('m'),date('d')-1,date('Y')); $endYesterday=mktime(0,