手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜Qcloud , 注册 | 登陆

关于Basename取中文文件名

首页 > PHP >

之前在博客里有提过basename的事情,蜘蛛也说过这个函数处理中文有问题。我也在测试的过程中遇到过各种各样的问题,但总体来说,我现在在处理中文文件名的时候是直接 array_pop(explode("/",$filename));
今天在群里,echo也说了这个问题,他居然还贴了SVN中PHP的源码关于basename的一段,并指出问题在php_mblen 这个函数上:他说mblen发现全中文的时候会返回负数。
于是他说有个临时的解决方案是:

XML/HTML代码
  1. echo  22:00:11  
  2. ltrim(basename(' ' . $filename))  
  3. 骗过mblen() ,mblen全中文的时候,返回的是负数。  
  4. 有一个空格就好 了  

没有试过,希望能够解决问题。
然后日哥说,可以用exif_read来解决这个问题,可以取得图片的title,但echo直接无视,因为不是每个上传的文件都是图片,可以通过 Exif_read解决这个问题。

echo也说了,别妄想用pathinfo解决这个问题,因为源码里显示,这个函数最 后还是调用了php_basename,所以他们的问题其实是一样的。。。。


=------纯记录----




本站采用创作共享版权协议, 要求署名、非商业和保持一致. 本站欢迎任何非商业应用的转载, 但须注明出自"膘叔", 保留原始链接, 此外还必须标注原文标题和链接.

Tags: basename, pathinfo

« 上一篇 | 下一篇 »

只显示10条记录相关文章

用PHP取得文件后缀名 (浏览: 26130, 评论: 0)
basename的郁闷 (浏览: 11900, 评论: 3)

发表评论

评论内容 (必填):