Replace Spaces with Underscores in Uploaded File

前端 未结 3 754
余生分开走
余生分开走 2020-12-15 14:22

I have a basic script that allows my site members to upload short samples of their compositions for customers to listen to.

Some file names have spaces which obvi

相关标签:
3条回答
  • 2020-12-15 14:54
    $filename = str_replace(' ', '-', trim(addslashes($_FILES['userfile']['name'])));
    

    Why addslashes though? This also seems a little too simple -- am I missing something?

    0 讨论(0)
  • 2020-12-15 15:04

    try;

    $filename = trim(str_replace(" ","_", $_FILES['userfile']['name']));
    
    0 讨论(0)
  • 2020-12-15 15:15

    After this line:

    $filename = trim(addslashes($_FILES['userfile']['name']));
    

    Write:

    $filename = str_replace(' ', '_', $filename);
    

    A filename like hello  world.mp3 (two spaces) would come out as hello__world.mp3 (two underscores), to avoid this you could do this instead:

    $filename = preg_replace('/\s+/', '_', $filename);
    
    0 讨论(0)
提交回复
热议问题