file_get_contents ne fonctionne pas pour les fichiers locaux
J'ai récemment mis à jour mon XAMPP à partir de PHP 5.2 à 5.3.1
Je semble avoir un problème avec file_get_contents().
Je peux utiliser la fonction pour obtenir quelque chose comme "http://www.google.com", mais des fois quand je l'utilise sur un domaine que j'ai le programme d'installation en local par exemple "http://localhost/my_dir/my_css_file.css".
Je ne suis pas vraiment sûr de ce que le problème est. Si c'est un bug, est-il une alternative viable?
De bien vouloir informer.
Ne pouvez-vous pas utiliser des chemins relatifs?
OriginalL'auteur Obinwanne Hill | 2010-08-11
Vous devez vous connecter pour publier un commentaire.
Essayez d'utiliser
include()
au lieu defile_get_contents()
.ou
Les mises à jour correspondant à vos commentaires:
Cela permet d'obtenir des données du fichier dans la variable
$string
.Avez-vous vérifié les permissions des fichiers?
Ugwuh - essayez la mise à jour de réponse.
Jolie variation sur file_get_contents(), je l'aime.
Cela ressemble à cela pourrait fonctionner. Malheureusement, j'ai séparé ob_start() de mise en œuvre de passe sur ma page. Je suis en train de voir si je peux travailler sur quelque chose avec CURL.
OriginalL'auteur James
Toute chance que vous êtes sur un système Windows?
Il y a un bug dans une combinaison de Windows, file_get_contents et localhost qui ne va pas être fixe. Voir Bug 38826 et Bug 40881
Essayez d'utiliser 127.0.0.1 au lieu de localhost ou de configurer un nom de domaine différent. Alors vous devriez le faire fonctionner.
Est
file()
de travail? Avez-vous essayé @Ignatz est la solution?OriginalL'auteur sprain
Résolu ce problème en utilisant CURL. Voici le code. Il va travailler avec des fichiers à distance par exemple
http://yourdomain.com/file.ext
Je ne pouvais pas utiliser @James solution parce que je suis en utilisant
ob_start
etob_flush
ailleurs dans mon code, donc, qui aurait gâché les choses pour moi.OriginalL'auteur Obinwanne Hill
Récemment, j'ai résolu ce problème. Sur ma machine windows, il est acceptable d'avoir des espaces dans les noms de dossier. Toutefois PHP n'était pas en mesure de lire ce chemin.
J'ai changé mon nom de dossier
À partir de:
:
Puis PHP a été en mesure de lire mes fichiers.
OriginalL'auteur Jason Cheladyn