当前位置:编程问答 > php >

请教php高手,解决basename函数和mb_substr函数处理中文文件名称的解决方法,在上传文件时,总是出现乱码

补充:重点是basename函数,在截取文件路径中文件名称时会出现乱码,主要是解决这个问题,期待高手,谢谢!
答案:substr只提供字符提取功能,没有提供字符过滤功能
如果你要过滤数字的话,可以用str_replace函数
如果你要过滤数字就这么写
$number = array("0","1","2","3","4","5","6","7","8","9");
str_replace($number,"",substr(md5(time()),0,5))

这样,就是提当前时间的md5前5个字符,如果存在数字则将其替换成空字符串 比如2ef3c将变成 efc
字幕方法类似!

如果判断mysql有重复记录得看你数据库结构和你这个重复的标准是什么,没具体例子,不好说明
其他:两个解决办法:
第一,不使用中文文件名;
第二,对文件名进行编码转换,然后mb_substr就不会出现乱码了。 

上一个:PHP函数等于或等于应该怎么表达
下一个:.NET,PHP,JAVA,JS优秀点分别是?

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,