比如说:在我桌面的一个文件夹里的一幅画叫做1.jpg上传后,显示本机路径为:
C:\\Documents and Settings\\ca7\\桌面\\压缩比率\\1.jpg
编码后,显示为:
C%3A%5C%5CDocuments+and+Settings%5C%5Cca7%5C%5C%D7%C0%C3%E6%5C%5C%D1%B9%CB%F5%B1%C8%C2%CA%5C%5C1.jpg我只想提取出“1.jpg”,其他的一概不要。
我应该如何去做??

解决方案 »

  1.   

    分割字符串 $str = "C%3A%5C%5CDocuments+and+Settings%5C%5Cca7%5C%5C%D7%C0%C3%E6%5C%5C%D1%B9%CB%F5%B1%C8%C2%CA%5C%5C1.jpg";
    $src = explode("%5C%5C",$str); //得到数组$str[5]就是你要的东西
      

  2.   

    $src[5]是你要的东西,上面写错了
      

  3.   

    <?php
    $s = "C:\\Documents and Settings\\ca7\\桌面\\压缩比率\\1.jpg";
    $s = urlencode($s); //url编码
    $s = str_replace("\\","/",urldecode($s)); //解码并转换路径符
    echo basename($s); //取出文件名
    ?>
      

  4.   

    两位高手稍等,我初学PHP,反应比较慢。我正在琢磨二位的方法!多谢指教,请稍等!
      

  5.   

    感谢两位高手!两种方法都成功提取!
    但说实在的,我都没有看明白!(初学 + 很笨)如果有可能,还请两位详解!
    比如:$src[5],什么意思?为什么是“5”??
    xuzuning(唠叨)的就更别提了,一点都不明白。我这就结贴!再次表示感谢!
      

  6.   

    urlencode是url编码函数
    urldecode是url解码函数
    他们是一对逆函数basename函数取得不含路径的文件名
    但他只能识别unix格式的路径
    所以dos格式的路径符\要转换成unix的路径符/