php header函数下载文件实现代码
header函数最常用的不是用于下载而是用于发送http类的
跳转
它会执行最后一个,不过是有条件的,例如:
代码如下 | 复制代码 |
header('Location:http://www.111cn.net"); 这个就会跳到百度 header('Location:http://www.111cn.net');echo '烈火网; |
这个就会跳到google
发送状态
输出状态值到浏览器,主要用于访问权限控制
代码如下 | 复制代码 |
<?php |
比如要限制一个用户不能访问该页,则可设置状态为404,如下所示,这样浏览器就显示为即该页不存在
代码如下 | 复制代码 |
<?php |
下载
例
代码如下 | 复制代码 |
<?php |
header函数进行相应的转化,
代码如下 | 复制代码 |
header(‘Content-type: application/octet-stream’);//输出的类型,根据下面提供的MIME表,选择相应的类型 header(‘Content-Disposition: attachment; filename=”下载显示名字.rar”‘);//下载显示的名字 readfile(‘服务器上的文件名.rar’);// |
要下的文件,包括路径
常用的MIME类型
.doc application/msword
.docx application/vnd.openxmlformats-officedocument.wordprocessingml.document
.rtf application/rtf
.xls application/vnd.ms-excel application/x-excel
.xlsx application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
.ppt application/vnd.ms-powerpoint
.pptx application/vnd.openxmlformats-officedocument.presentationml.presentation
.pps application/vnd.ms-powerpoint
.ppsx application/vnd.openxmlformats-officedocument.presentationml.slideshow
.pdf application/pdf
.swf application/x-shockwave-flash
.dll application/x-msdownload
.exe application/octet-stream
.msi application/octet-stream
.chm application/octet-stream
.cab application/octet-stream
.ocx application/octet-stream
.rar application/octet-stream
.tar application/x-tar
.tgz application/x-compressed
.zip application/x-zip-compressed
.z application/x-compress
.wav audio/wav
.wma audio/x-ms-wma
.wmv video/x-ms-wmv
.mp3 .mp2 .mpe .mpeg .mpg audio/mpeg
.rm application/vnd.rn-realmedia
.mid .midi .rmi audio/mid
.bmp image/bmp
.gif image/gif
.png image/png
.tif .tiff image/tiff
.jpe .jpeg .jpg image/jpeg
.txt text/plain
.xml text/xml
.html text/html
.css text/css
.js text/javascript
php创建目录文件夹函数mkdir(),其结构形式如下:
kdir(string $dirname,[int $mode])
参数$dirname为想要创建目录的名称,参数$mode可选,为整型变量,表示创建模式。
实例:
代码如下 | 复制代码 |
<?php |
php遍历目录的方法很多,这里通过实例详细介绍php遍历目录下文件的方法。
代码:
代码如下 | 复制代码 |
<?php function directory($dir){ /* 声明函数 */ $dp=opendir($dir); /* 打开目录 */ while($file=readdir($dp)){ /* 读取目录 */ if($file !="." && $file !=".."){ /* 判断是否有"."或者".."文件 */ $path=$dir. "/". $file; /* 取得目录路径 */ if(is_dir($path)){ /* 判断是否有子目录 */ directory($path); /* 函数递归调用 */ } else echo $path. "<br>"; /* 显示文件 */ } } closedir($dp); } directory("e:wp"); ?> |
php读取目录函数readdir()可以读取该目录下所有文件以及文件夹,其结构形式如下:
readdir($dp);
参数$dp为使用函数opendir()打开目录返回的资源对象,函数返回目录下的文件名。
实例:
代码如下 | 复制代码 |
<?php |
php关闭目录函数用closedir(),其结构形式如下:
closedir($dp)
参数$dp为使用函数opendir()打开目录返回的资源对象。
实例:
代码如下 | 复制代码 |
<?php $mulu="study"; $dir=opendir($mulu); closedir($dir); ?> |
用函数closedir()关闭目录成功并不返回值1,故不能通过if语句去判断是否关闭成功
前面介绍了php一系列的文件操作,接着笔者再介绍怎么对目录进行操作。php目录函数功能跟文件函数差不多,这里先介绍打开目录函数opendir(),其结构形式如下:
opendir(string $path)
参数$path为要打开目录的路径,函数将返回一个打开目录的句柄,用于存储当前的目录资源。打开目录之前首先要判断目录是否存在,用is_dir()函数。
实例:
代码如下 | 复制代码 |
<?php |
php指针函数rewind()可以将文件位置指针设到文件的开头,其结构形式如下:
bool rewind (resource $handle );
函数返回一个布尔值,如果成功则返回true,失败则返回false。
实例:
代码如下 | 复制代码 |
|
如果我们知道数组元素的名字这个就好办了
按键名来删除数组中指定数组元素
代码如下 | 复制代码 |
$barray = array('a'=>1,'b'=>2,'wod'=>3,'c'=>4,'abc'=>5);
|
如果有多个数组要同时删除,上面办法是解决不了,我们可以利用array_diff函数来操作
例
代码如下 | 复制代码 |
$a1=array("Cat","Dog","Horse",'dff','dfdf','www'); Array |
例2
array_search() 函数与 in_array() 一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false
代码如下 | 复制代码 |
$del_value = 3; print_r($array); 输出 array('1', '2', '4', '5'); |
例
array_filter()
调用方式:array_filter($array)
参数说明:$array 是操作的对象,我们将删除其中的空元素
实例:
代码如下 | 复制代码 |
<?php 结果: Array ( [a] => abc [b] => bcd [c] => cde [d] => def ) |
上面人方法删除的都会不会重建索引的,下面我来给大家介绍一个删除数组元素并重建数组索引的方法
代码如下 | 复制代码 |
function array_remove(&$arr,$offset){ } |
strtotime()函数 strtotime() 函数将任何英文文本的日期时间描述解析为 Unix 时间戳。
例子
代码如下 | 复制代码 |
<?php 输出: 1138614504 |
上面是把日期转换成时间戳了,我们也可以把如 2013-04-21这种转换成时间戳
代码如下 | 复制代码 |
$a = date(); |
要求只能在白天8:00-20:00发送短信,怎么样获得到每天的这段时间区间?
代码如下 | 复制代码 |
$time = time(); |
下面来介绍把时间戳转换成日期
date()函数,
此函数不但可以获取各种各样的时间日期之外,还可以进行日期转换呼
代码如下 | 复制代码 |
<? |
这样就输出 www.111cn.net 提示 2013-04-21 。
这种问题是你php中把错误提示开启了之后,会把你编程的一些错误给告诉你,下面我来给大家分析php Notice: Undefined index 错误提示方法,有需要的朋友可参考。原因分析
出现这种问题一般是变量未定义造成的
例
代码如下 | 复制代码 |
if($a) } |
//提示:Notice: Undefined variable: a in E:/www/test.php on line 5
代码如下 | 复制代码 |
$a=1; } //输出1 error_reporting(0); if($a) } |
解决方法总结
1、如果是变量未申请直接申名变量如 $a=1; 这样。
2、在文章头部加error_reporting(0); 所有错误都不提示
3、isset($_GET["page"]) 或 :@$page=$_GET["page"]
4、用php.ini中error_reporting = E_ALL & ~E_NOTICE 可以关闭notice的显示,屏蔽掉此类警告好,
相关文章
- 下面小编来给大家演示几个php操作zip文件的实例,我们可以读取zip包中指定文件与删除zip包中指定文件,下面来给大这介绍一下。 从zip压缩文件中提取文件 代...2016-11-25
- eval函数在php中是一个函数并不是系统组件函数,我们在php.ini中的disable_functions是无法禁止它的,因这他不是一个php_function哦。 eval()针对php安全来说具有很...2016-11-25
- 在php中eval是一个函数并且不能直接禁用了,但eval函数又相当的危险了经常会出现一些问题了,今天我们就一起来看看eval函数对数组的操作 例子, <?php $data="array...2016-11-25
Python astype(np.float)函数使用方法解析
这篇文章主要介绍了Python astype(np.float)函数使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-06-08Jupyter Notebook读取csv文件出现的问题及解决
这篇文章主要介绍了JupyterNotebook读取csv文件出现的问题及解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2023-01-06- 这篇文章主要介绍了Python中的imread()函数用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-16
- 本文主要介绍了C# 中取绝对值的函数。具有很好的参考价值。下面跟着小编一起来看下吧...2020-06-25
- 下面小编就为大家带来一篇C#学习笔记- 随机函数Random()的用法详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
- 有时我们接受或下载到的PSD文件打开是空白的,那么我们要如何来解决这个 问题了,下面一聚教程小伙伴就为各位介绍Photoshop打开PSD文件空白解决办法。 1、如我们打开...2016-09-14
- C#使用System.IO中的文件操作方法在Windows系统中处理本地文件相当顺手,这里我们还总结了在Oracle中保存文件的方法,嗯,接下来就来看看整理的C#操作本地文件及保存文件到数据库的基本方法总结...2020-06-25
- 这篇文章主要介绍了解决python 使用openpyxl读写大文件的坑,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-13
- 这篇文章主要介绍了C#实现HTTP下载文件的方法,包括了HTTP通信的创建、本地文件的写入等,非常具有实用价值,需要的朋友可以参考下...2020-06-25
- 这篇文章主要为大家详细介绍了SpringBoot实现excel文件生成和下载,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-02-09
php无刷新利用iframe实现页面无刷新上传文件(1/2)
利用form表单的target属性和iframe 一、上传文件的一个php教程方法。 该方法接受一个$file参数,该参数为从客户端获取的$_files变量,返回重新命名后的文件名,如果上传失...2016-11-25- CREATE FUNCTION ChangeBigSmall (@ChangeMoney money) RETURNS VarChar(100) AS BEGIN Declare @String1 char(20) Declare @String2 char...2016-11-25
- 这篇文章主要介绍了C++中Sort函数详细解析,sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变...2022-08-18
Android开发中findViewById()函数用法与简化
findViewById方法在android开发中是获取页面控件的值了,有没有发现我们一个页面控件多了会反复研究写findViewById呢,下面我们一起来看它的简化方法。 Android中Fin...2016-09-20- 要替换字符串中的内容我们只要利用php相关函数,如strstr,str_replace,正则表达式了,那么我们要替换目录所有文件的内容就需要先遍历目录再打开文件再利用上面讲的函数替...2016-11-25
- 又码了一个周末的代码,这次在做一些关于文件上传的东西。(PHP UPLOAD)小有收获项目是一个BT种子列表,用户有权限上传自己的种子,然后配合BT TRACK服务器把种子的信息写出来...2016-11-25
- strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。语法:strstr(string,search)参数string,必需。规定被搜索的字符串。 参数sea...2013-10-04