Maison  >  Article  >  développement back-end  >  Que faire si la fonction php fopen échoue

Que faire si la fonction php fopen échoue

藏色散人
藏色散人original
2021-03-29 10:02:162940parcourir

La solution à l'échec de la fonction php fopen : ajoutez d'abord un rapport d'erreur PHP via "set_error_handler("customError");" puis modifiez les restrictions d'accès de PHP au répertoire dans le fichier de configuration php php. .ini.

Que faire si la fonction php fopen échoue

L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur DELL G3

PHP fopen échoue et revient false

J'ai rencontré un problème le 14 décembre. J'ai juste pris le temps de l'enregistrer aujourd'hui, j'espère que cela sera utile à d'autres amis qui rencontrent ce problème.

$fH = fopen("/tmp/test.log",'a');

Dans la ligne de code ci-dessus, fopen renvoie en fait false. Il ne s'agit ni d'un problème lié aux autorisations de répertoire ou de fichier, ni d'un problème de chemin de fichier (chemin relatif, chemin absolu), etc., ni d'un problème lié aux autorisations de fichier. problème avec le mode d'ouverture du fichier (r,w,a etc.). Après avoir cherché en ligne pendant un certain temps, j'ai découvert que la raison du retour de false était simplement l'une des trois situations ci-dessus, je n'ai donc pas trouvé de réponse.

J'ai donc ajouté un rapport d'erreur PHP :

//error handler function
function customError($errno, $errstr){ 
         echo "<b>Error:</b> [$errno] $errstr";
 }
//set error handler
set_error_handler("customError");

J'ai trouvé la raison immédiatement :

Il s'avère que j'ai fait le répertoire d'accès PHP dans le fichier de configuration php php. Restrictions ini :

open_basedir= .

[Apprentissage recommandé : Tutoriel vidéo PHP]

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn