php - file_get_contents - le Téléchargement de fichiers avec des espaces dans le nom de fichier ne fonctionne pas

Je suis en train de télécharger des fichiers à l'aide file_get_contents() fonction.
Toutefois, si l'emplacement du fichier est http://www.example.com/some name.jpg, la fonction ne parvient pas à télécharger cette.

Mais si l'URL est donnée comme http://www.example.com/some%20name.jpg, le même est téléchargé.

J'ai essayé rawurlencode() mais ce convertit tous les caractères dans l'URL et le téléchargement échoue à nouveau.

Quelqu'un peut s'il vous plaît suggérer une solution pour cela?

Ne pas vous le dire file_get_contents?
some+name.jpg devrait fonctionner. Comment fait-il de ne pas télécharger? Erreur 404? 400 bad request? file_put_contents() est pour l'ENREGISTREMENT des données. Si vous fournissez une URL, vous êtes effectivement essayer de faire un téléchargement http, ce qui n'est probablement PAS ce que vous voulez.
la question c'est est rawurlencode sera le double de coder une chaîne si elle est déjà codé. Cependant, il suffit de décoder toutes les chaînes de caractères avant de les encoder ne ressemble pas à cela marchera. Il a besoin d'une fonction qui va travailler pour toutes les Url

OriginalL'auteur user1064386 | 2011-11-24