php文件名(php文件名后缀)
华为云服务器特价优惠火热进行中! 2核2G2兆仅需 38 元;4核4G3兆仅需 79 元。购买时间越长越优惠!更多配置及优惠价格请咨询客服。
合作流程: |
本篇文章给大家谈谈php文件名,以及php文件名后缀对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
微信号:cloud7591如需了解更多,欢迎添加客服微信咨询。
复制微信号
本文目录一览:
PHP 如何 得到文件名(不要后缀名)
网络请求上传文件,可使用php系统变量$_FILES[$paramName][$infoName]来获取相应数据。分析:$paramName为上传文件所使用的的参数名,$infoName为所需获取的信息类型('name'文件原名,'type'文件类型,'size'文件大小,'tmp_name'服务器临时存储此文件的文件名,'error'文件上传相关的错误代码...)。
例:$fileName为不包含后缀名的文件名
$splitNames = explode(".", $_FILES['excel']['name']);//将文件原名按.分割打成字符串数组
unset($splitNames[count($splitNames)-1]); //抹掉文件后缀名数据
$fileName = implode('.', $splitNames);//将抹掉后缀名的数组拼接成文件名
2.本地文件,本地文件肯定需要提供文件路径
例:$fileName为不包含后缀名的文件名
$filePath = "文件路径";//文件路径
$splitPaths = explode("\", $filePath);
$fileFullName = $splitPaths[count($splitPaths)-1];//获取文件全名
$splitNames = explode(".", $_FILES['excel']['name']);//将文件全名按.分割打成字符串数组
unset($splitNames[count($splitNames)-1]);//抹掉文件后缀名数据
$fileName = implode('.', $splitNames);//将抹掉后缀名的数组拼接成文件名

php文件名可以是中文吗
不建议使用中文文件名!
因为中文会被 URL编码发送,到服务器端的时候虽然会解码,但是如果和你的编码不一致,就解不出来了。
简单的说,URL中的中文 ,在常见的浏览器中,默认会以UTF-8编码进行编码后发送到服务器端!而在中文 windows环境的服务器中,解码URL的时候,却用的是gb2312编码进行解码的,这样就导致了没法得到你在地址栏里输入的中文原文!
所以就会提示找不到文件名了。
如果一定要用中文 ,解决办法,仅限你本地浏览的解决办法
在浏览器中,打开“internet选项“菜单,选择”高级“,然后找到 “发送utf-8 URL“,把前面的钩去掉。然后确认。再重启浏览器。这样地址栏里的中文就会默认以gb2312编码 进行发送,这样服务器端就能正确找到该中文文件名的文件了
PHP文件是什么文件?怎么打开?
PHP是一种非常流行的WEB程序语言,超级文本预处理语言,其他的还有ASP,JSP等。简单的说.PHP就是嵌入这种语言后的一个动态网页文件。
四种打开php格式文件方法:
首先我们来看php文件是什么文件,PHP是一个网页脚本,文件后缀名为.php,
php文件打开方式一:用记事本打开
右击.php文件,选择记事本打开,就可以看到文件代码啦!
php文件打开方式二:用Dreamweaver打开
Dreamweaver是网页编辑器,比较流行的网站开发工具,你可以直接把文件拖进去就可以打开php文件了
php文件打开方式三:Notepad++工具打开
也是代码编辑器,选择文件打开就行
php文件打开方式四:SublimeText工具打开
和上面方法一样,直接选择文件打开就行
除了记事本,其它代码编辑器工具都可以去php中文网php开发工具下载
若是想要.php文件进行运行则需要php环境。可以去php中文网QQ群374224296里去下载php环境搭建工具软件(PHPToolClient)进行安装,直接把文件放进根目录下就可以用浏览器打开啦!
php中怎么从路径中取出文件名
1、basename("/mnt/img/image01.jpg")函数:得到文件名;输出结果为:image01.jpg.
使用 basename($uriString) 我们可以得到一个包含扩展名的文件名;
如果不需要扩展名,也可以使用 basename($uriString, $extString) 过滤扩展名,仅仅返回文件名。
2、echo __FILE__;得到当前请求文件的完整路径,输出格式如:/mnt/hgfs/ictsapce/test/index.php
3、dirname() 函数返回路径中的目录部分。
如:
echo dirname("/testweb/home.php");
输出:/testweb
PHP下载文件名乱码问题详解
通过把Content Type设置为application/octet stream 可以把动态生成的内容当作文件来下载 相信这个大家都会 那么用Content Disposition设置下载的文件名 这个也有不少人知道吧 基本上 下载程序都是这么写的
header( Content Disposition: attachment; filename= $filename);print Hello! ;?
这样用浏览器打开之后 就可以下载document txt
但是 如果$filename是UTF 编码的 有些浏览器就无法正常处理了 比如把上面那个程序稍稍改一下
header( Content Disposition: attachment; filename= $filename);print Hello! ;?
把程序保存成UTF 编码再访问 IE 下载的文件名就会乱码 FF 下下载的文件名就只有 中文 两个字 Opera 下一切正常
输出的header实际上是这样子
Content Disposition: attachment; filename=中文 文件名 txt
其实按照RFC 的定义 多语言编码的Content Disposition应该这么定义
Content Disposition: attachment; filename*= utf %E %B %AD%E % % % %E % % %E %BB%B %E % % D txt
即
filename后面的等号之前要加 * filename的值用单引号分成三段 分别是字符集(utf ) 语言(空)和urlencode过的文件名 最好加上双引号 否则文件名中空格后面的部分在Firefox中显示不出来 注意urlencode的结果与php的urlencode函数结果不太相同 php的urlencode会把空格替换成+ 而这里需要替换成%
经过试验 发现几种主流浏览器的支持情况如下
IE attachment; filename=
FF attachment; filename= UTF 文件名
attachment; filename*= utf
O attachment; filename= UTF 文件名
Safari (Win) 貌似不支持?上述方法都不行
这样看来 程序必须得这样写才能支持所有主流浏览器
$encoded_filename = urlencode($filename);$encoded_filename = str_replace( + %
$encoded_filename);header( Content Type: application/octet stream );
if (preg_match( /MSIE/ $ua)) { header( Content Disposition: attachment;
filename= $encoded_filename );} else if (preg_match( /Firefox/ $ua))
{ header( Content Disposition: attachment; filename*= utf \ \ $filename );}
else { header( Content Disposition: attachment; filename= $filename );}print ABC ;?
lishixinzhi/Article/program/PHP/201311/21454
php文件名的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于php文件名后缀、php文件名的信息别忘了在本站进行查找喔。
