Avant-propos :
PHP prend en charge les opérations de diverses bases de données et dispose également d'une multitude de méthodes d'opération pour les opérations sur les fichiers. Les opérations actuelles de nombreux amis sont toujours basées sur des opérations sur les fichiers, mais il y a parfois encore beaucoup de confusion et de doutes lors de l'exploitation des fichiers, ce qui suit. est une collection de quelques problèmes concernant les opérations sur les fichiers que j'ai rencontrés dans mon processus d'écriture quotidien et que mes amis sur le forum ont rencontrés.
Q : Comment créer un nouveau fichier ?
Réponse :
1. Utilisez fopen (le nom du fichier à créer, les paramètres), les paramètres peuvent être w, w+, a, a+
2. Utilisez exec (echo '' > le nom du fichier à créer) ; méthode système pour créer le fichier, vous pouvez également utiliser la commande touch Linux pour créer
Q : Pourquoi ne puis-je pas créer de fichier ?
Réponse :
1. Si vous utilisez fopen pour créer un fichier, utilisez-vous correctement les paramètres ?
2. Pour les problèmes d'autorisation système, veuillez demander à votre WEBMASTER si votre répertoire FTP dispose d'autorisations en écriture.
3. Pour les problèmes d'autorisation FTP, vous devez confirmer. votre PHP Le répertoire dans lequel le fichier doit être écrit doit avoir une autorisation en écriture, c'est-à-dire qu'après vous être connecté à votre logiciel FTP, l'autre groupe doit avoir une autorisation en écriture.
Sinon, veuillez modifier les autorisations et essayez
de demander : Comment lire le fichier dans un tableau ?
Réponse : Utilisez la fonction fichier.
Question : Comment lire tous les fichiers ?
répondre:
1. Utilisez fread($fp);
2. Si votre version de PHP >= 4.3.0, vous pouvez utiliser file_get_contents();
Q : Comment déterminer si le fichier existe ?
Réponse : utilisez file_exists();
Demandez à nouveau : pourquoi ne pas utiliser fopen() pour juger ?
Réponse : La raison est que parfois les données renvoyées par fopen nous conduisent à des jugements erronés en raison de problèmes d'autorisation.
Question : Pourquoi une erreur se produit-elle lorsque je lis une page WEB ?
Réponse :
1. Il se peut que vos paramètres de passage soient erronés. Lors de la lecture d'une page WEB, vous ne pouvez utiliser que le mode r pour lire la page.
2.
Assurez-vous que la page WEB que vous souhaitez lire est accessible.
J'obtiens les attributs pertinents du fichier ?
Réponse : PHP fournit un ensemble de méthodes pour obtenir des attributs de fichier, tels que filemtime(), fileowner(), filegroup(), filectime(), fileatime()... Veuillez vous référer au manuel pour une utilisation détaillée.
Question : Après avoir ouvert un fichier en PHP, puis-je positionner le "curseur" du fichier comme C ?
Réponse : Oui, utilisez fseek();
Question : Je souhaite empêcher les autres d'accéder au fichier lorsque j'y accède. Que dois-je faire ?
Réponse :
1. Vous pouvez utiliser d'autres programmes pour empêcher les utilisateurs d'accéder à la page pour les opérations sur les fichiers.
2. Utilisez flock(); pour les paramètres détaillés et les méthodes d'utilisation, veuillez vous référer au manuel.
Question : Comment supprimer la première ligne du fichier. fichier, ou spécifier une ligne de données ?
Réponse :
PHP ne fournit pas une telle méthode de fonctionnement, mais nous pouvons l'utiliser en combinaison. Le code suivant montre que nous supprimerons la troisième ligne de données du fichier test.dat (les données du fichier test.dat en contiennent plus de). trois lignes)
<?php
$filename=test.dat; //Définir le fichier d'opération $delline=3; //Le nombre de lignes à supprimer if(!file_exsits($filename)){
mourir(Le fichier spécifié n'a pas été trouvé ! L'opération est interrompue !);
}
$farray=file($filename);//Lire les données du fichier dans le tableau pour($tmpa=0;$Tmpa<count($farray);$Tmpa++){
si(strcmp($Tmpa+1,$delline)==0){
//Les lignes supprimées par le juge continuent ;
}
//Données réorganisées $newfp.=$farray[$Tmpa].\r\n;
}
$fp=@fopen($filename,a ) ou die(Échec de l'ouverture du fichier $filename en mode écriture);//Nous ouvrons le fichier en mode écriture @fputs($fp,$newfp) ou die(Échec de l'écriture du fichier );
@fclose($fp);
?>
Le code ci-dessus montre la suppression d'une ligne de fichiers, mais si vous regardez attentivement, il vous fournit en fait des rappels pertinents pour d'autres opérations sur les fichiers ~
Question : Lorsque j'essaie d'ouvrir un fichier qui n'existe pas, comment puis-je ne pas laisser le une erreur s'affiche pour éviter de divulguer mon chemin ! !
Réponse : Ajoutez le symbole @ avant la méthode par laquelle vous souhaitez ouvrir le fichier pour bloquer les erreurs. @ est un symbole spécial fourni par PHP pour bloquer les messages d'erreur. Vous pouvez également ajouter (généralement en haut de la page) error_reporting(0) avant. l'étape que vous souhaitez opérer. ); permet de bloquer l'affichage de tous les messages d'erreur sur la page. Une méthode déconseillée est de modifier le php.ini (sauf FAI).
Q : J'utilise un hôte virtuel, comment puis-je empêcher d'autres utilisateurs de voler mes données ?
Réponse : Il est recommandé au FAI de modifier open_basedir dans php.ini pour les restrictions. Le paramètre FAI non recommandé consiste à ajouter des opérations de fichier telles que fopen et file à Disable_function.
Question : Pourquoi ne puis-je pas supprimer ces fichiers après avoir utilisé PHP pour les supprimer lorsque je me connecte via FTP ? ?
Réponse : Principalement parce que les fichiers créés par PHP appartiennent au groupe d'utilisateurs WEB, c'est-à-dire que les fichiers créés n'appartiennent pas à votre utilisateur FTP ! ! ! La solution à ce problème consiste à utiliser les méthodes chmod, unlink, etc. du programme PHP. Il est recommandé aux utilisateurs de se souvenir des autorisations du fichier chmod lorsqu'ils utilisent PHP pour créer des fichiers. La recommandation est 777.
Question : Comment utiliser des fichiers texte. comme entrepôts de données ? Certains livres d'or, forums, etc. l'utilisent tous !
Réponse : En fait, cela utilise principalement un fichier et constitue un exemple typique de lecture et de segmentation de données combinées à une explosion.
Q : Comment puis-je modifier le nom du fichier ?
Réponse : rename();
Q : Comment supprimer des fichiers ?
Réponse : unlink(); exec(del(rm -vf) filename);
Remarque : rm -vf est utilisé sous Linux
Question : Comment effacer le fichier ?
Réponse : Utilisez fopen(filename,w); ou exec(echo '' > filename);
Q : Comment modifier le contenu du fichier ?
Réponse : Je me souviens avoir répondu une fois à une question sur la suppression du contenu d'un fichier. En fait, la modification du contenu ne nécessite qu'une substitution de variable sur la base de la suppression du contenu. J'espère que vous pourrez rechercher et modifier mon message ci-dessus pour remplacer les données variables.