Maison > Article > développement back-end > Traitement des fichiers PHP : écriture de fichiers et fichiers d'exploitation
Traitement de fichiers PHP - écriture de fichiers et fichiers d'exploitation
Dans le traitement de fichiers PHP, il y a l'ouverture et la fermeture de fichiers, la lecture de fichiers, la lecture de fichiers. La récupération comprend également lire une ligne, des caractères, des chaînes et le fichier entier. Donc, puisqu'il y a lecture, il doit y avoir écriture. Dans l'article d'aujourd'hui, nous allons vous donner une explication détaillée de l'écriture et du fonctionnement des fichiers !
Ce dont nous venons de parler dans les trois premiers articles "Traitement de fichiers PHP - ouvrir/fermer un fichier ", "Traitement de fichiers PHP - lire un fichier (un caractère, une chaîne) " et "Traitement des fichiers PHP—Comment lire des fichiers (une ligne, fichier entier) " ont des introductions détaillées. Les amis qui ne l'ont pas lu peuvent le consulter ! Aujourd'hui, nous expliquons principalement l'écriture de fichiers et les opérations sur les fichiers.
1 : Écriture de données dans un fichier
L'écriture de données est également une opération de fichier courante en PHP. Utilisez fweite() et file_put_contents(. ) la fonction écrit des données dans un fichier.
1. Quand fwrite() peut-il être appelé ? Il est également appelé fputs(). Leur utilisation est la même. La syntaxe de la fonction fwrite() est la suivante :
int fwrite ( resource $handle , string $string [, int $length ] )
Cette fonction écrit la chaîne de contenu dans le fichier pointé par le handle du pointeur. Si le paramètre length est spécifié, il s'arrêtera après l'écriture de length octets. Si la longueur du contenu du fichier est inférieure à length, l'intégralité du contenu du fichier sera sortie.
2. La fonction file_put_contents() est une nouvelle fonction en PHP5. Le format de syntaxe de cette fonction est le suivant :
int file_put_contents ( string $filename , mixed $data [, int $flags = 0 [, resource $context ]] )
filename est le fichier à utiliser. quelles données doivent être écrites
les données sont les données à écrire
les drapeaux peuvent être FILE_USE_INCLUDE_PATH, FILE_APPEND ou LOCK_EX, où LOCK_EX est un serrure exclusive. Dans l'article suivant, nous présenterons une introduction détaillée !
L'utilisation de la fonction file_put_contents() a la même fonction que l'appel des fonctions fopen(), fwrite() et fclose() dans l'ordre. Comparons la supériorité des fonctions à travers des atouts spécifiques !
Cet exemple utilise d'abord la fonction fwrite() pour écrire des données dans le fichier, puis utilise la fonction file_put_contents() pour écrire les données. L'exemple de code spécifique est le suivant :
<?php header("Content-Type:text/html; charset=utf-8"); $filepath = "05.txt"; $str = "PHP中文网 www.php.cn"; echo "用fwrite函数写入文件"; $fopen = fopen($filepath,"wb")or die("文件不存在"); fwrite($fopen,$str); fclose($fopen); readfile($filepath); echo "<p>用file_put_contents函数写入文件:"; file_put_contents($filepath,$str); readfile($filepath); ?>
Le résultat de sortie est :
2 : Fichiers d'exploitation
PHP peut non seulement lire et écrire le contenu du fichier, mais aussi le fichier lui-même. Vous pouvez effectuer des opérations telles que : copier, renommer, afficher la date de modification, etc. PHP dispose d'un grand nombre de fonctions d'opération de fichiers intégrées. Les fonctions d'opération de fichiers couramment utilisées sont les suivantes :
函数原型 | 函数说明 | 举例 |
bool copy(string path1,string path2) | 将文件从path1复制到path2。如果成功则返回true,失败返回false。 | copy('tm.txt','../tm.txt') |
bool rename(string filename1,string filename2) | 把name1重新命名为name2 | rename('1.txt','test.txt') |
bool unlink(string filename) | 删除文件,成功返回true,失败返回false。 | unlink('tm.txt') |
int fileatime(string filename) | 返回文件最后一次被访问的时间,以Linux时间戳的方式返回 | fileatime('test.txt') |
int filemtime(string filename) | 返回文件最后一次被修改的时间,以Linux时间戳的方式返回 | date("Y-m-d H:i:s",filemtime("test.txt")) |
int filesize(string filename) | 取得文件filename的大小 (bytes) |
filesize('1.txt') |
array pathinfo(string name[,int options]) | 返回一个数组,包含文件的name的路径信息。有dirname,basename和extension。可通过option设置要返回的信息,有PATHINFO_DIRNAME、PATHINFO_BASENAME和PATHINFO_EXTENSION。默认为返回全部 | $arr=pathinfo('/tm/s1/16/4/9/1.txt'); foreach($arr as $method=>$value){ echo $method.":".$value." ";} |
string realpath(string filename) | 返回文件filename的绝对路径,如D:wampserverwwwtesttest.txt | realpath(test.txt) |
array stat(string filename) | 返回一个数组,包括文件的相关信息,如上面提到的文件大小、最后修改时间等。 | $arr=stat('test.txt'); foreach($arr as $method=>$value){ echo $method.":".$value." "; } |
Remarque :
Lors de la lecture et de l'écriture de fichiers, à l'exception de quelques fonctions telles que file() et readfile(), vous devez d'abord utiliser la fonction fopen() pour ouvrir le fichier, et enfin, utilisez la fonction fclose() pour fermer le fichier. Les fonctions d'information sur le fichier (telles que la taille du fichier, l'heure du fichier, etc.) n'ont pas besoin d'ouvrir le fichier, tant que le fichier est enregistré !
Le traitement des fichiers PHP se termine ici. Dans l'article suivant, nous traiterons le répertoire PHP. Pour plus de détails, veuillez lire « Traitement du répertoire PHP – Ouvrir/Fermer le répertoire » !
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!