Maison > développement back-end > tutoriel php > Introduction détaillée aux fonctions de traitement de fichiers php (avec exemples)

Introduction détaillée aux fonctions de traitement de fichiers php (avec exemples)

不言
Libérer: 2023-04-04 17:46:02
avant
2426 Les gens l'ont consulté

Cet article vous apporte une introduction détaillée aux fonctions de traitement de fichiers PHP (avec des exemples). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

PHP peut facilement exploiter des répertoires et des fichiers, y compris la création, la lecture, la modification, la suppression, etc.

mkdir

bool mkdir ( string $pathname [, int $mode = 0777 [, bool $recursive = false [, ressource $context ]]] )
Essayez de créer un nouveau répertoire spécifié par chemin.

mkdir peut créer un répertoire spécifié par chemin d'accès. Le mode par défaut est 0777, qui est ignoré sous Windows et renvoie false en cas d'échec.

<?php
mkdir(&#39;./test&#39;);// 在当前目录创建 test 目录
Copier après la connexion

rmdir

bool rmdir ( string $dirname [, resource $context ] )
Essayez de supprimer le répertoire spécifié par dirname. Le répertoire doit être vide et doit disposer des autorisations appropriées. Un échec générera une erreur de niveau E_WARNING.

Comme indiqué ci-dessus, rmdir peut supprimer un répertoire. Il convient de noter que le répertoire doit être vide et doit avoir autorisations . S'il échoue, false sera. est revenu. Exemple

<?php
rmdir(&#39;./test&#39;);// 删除当前目录下的 test 目录。
Copier après la connexion

file_put_contents

int file_put_contents ( string $filename , mixte $data [, int $flags = 0 [, ressource $context ]] )
et L'appel séquentiel de fopen(), fwrite() et fclose() a la même fonction.

file_put_contents Écrivez les données dans le fichier de nom de fichier. S'il n'existe pas de fichier de ce type, créez-le. S'il échoue, il renvoie false. S'il réussit, il renvoie le nombre d'octets écrits. Exemple

<?php
file_put_contents(&#39;./test.txt&#39;, date(&#39;Y-m-d H:i:s&#39;));// 在当前目录创建 test.txt,并且写入数据
file_put_contents(&#39;./test.txt&#39;, date(&#39;Y-m-d H:i:s&#39;), FILE_APPEND);// 在 test.txt 文件中,追加数据
Copier après la connexion

file_get_contents

string file_get_contents ( string $filename [, bool $use_include_path = false [, ressource $context [, int $offset = -1 [, int $maxlen ]] ]] )
Identique à file(), sauf que file_get_contents() lit le fichier dans une chaîne. Le contenu de longueur offset sera lu à partir de la position spécifiée par le paramètre maxlen.

file_get_cntents lit le contenu du nom de fichier et renvoie une chaîne en cas d'échec, il renvoie false. Exemple

<?php
echo file_get_contents(&#39;./test.txt&#39;);// 输出当前目录下 test.txt 的内容
Copier après la connexion

unlink

bool unlink ( string $filename [, resource $context ] )
Supprimer le nom du fichier. Similaire à la fonction unlink() d'Unix C. Une erreur de niveau E_WARNING est générée lorsqu'une erreur se produit.

dissocier supprime le fichier de nom de fichier, il faut également faire attention aux autorisations. Exemple

<?php
unlink(&#39;./test.txt&#39;);// 删除当前目录的 test.txt
Copier après la connexion

rename

bool rename ( string $oldname , string $newname [, resource $context ] )
Essayez de renommer oldname en newname.

rename peut non seulement renommer des fichiers, mais également déplacer des fichiers et renvoie false en cas d'échec. Exemple

<?php
rename(&#39;./test.txt&#39;, &#39;./test1.txt&#39;);// 当前目录下的 test.txt 重命名为 test1.txt
rename(&#39;./test1.txt&#39;, &#39;./test/test.txt&#39;);// 将当前目录下的 test1.txt, 移动到 test下
Copier après la connexion

copy

bool copy ( string $source , string $dest [, resource $context ] )
Copiez le fichier de la source vers la destination.

Comme indiqué ci-dessus, false est renvoyé en cas d'échec. Exemples

<?php
copy(&#39;./test/test.txt&#39;, &#39;./test1.txt&#39;);// test 目录下的test.txt, 拷贝到当前目录
Copier après la connexion

Exemples et notes

Voici quelques exemples qui seront utilisés dans le travail ou les entretiens.

<?php

/**
 * 遍历目录下所有文件
 * @param $path 
 */
function getAllFiles($path)
{
    if (!is_dir($path)) {
        exit(&#39;错误&#39;);
    }
    echo &#39;<ul>';
    foreach (scandir($path) as $line) {
        if ($line == '.' || $line == '..') {
            continue;
        }

        if (is_dir($path . '/' . $line)) {
            getAllFiles($path . '/' . $line);
        }
        echo '<li>' . $path . '/' . $line . '</li>';
    }
    echo '</ul>';
}

/**
 * 删除目录下所有文件
 * @param $path
 */
function delAllFile($path)
{
    if (!is_dir($path)) {
        exit('目录不存在');
    }

    $dir = opendir($path);
    while ($filename = readdir($dir)) {
        if ($filename != "." && $filename != "..") {
            $file = $path . "/" . $filename;
            if (is_dir($file)) {
                delAllFile($file);
            } else {
                unlink($file);
            }
        }
    }
    closedir($dir);
    rmdir($path);
}
Copier après la connexion

Remarque

  • Le paramètre récursif dans mkdir de peut créer des répertoires imbriqués

  • file_put_contents Le paramètre flags peut être combiné, veuillez vous référer au lien pour plus de détails ;

  • file_put_contents peut également renvoyer une valeur non booléenne équivalente à false, utilisez === pour juger

  • file_get_contents peut également ouvrir une URL pour obtenir le contenu d'une page Web

  • file_get_contents Si vous souhaitez ouvrir une URL avec des caractères spéciaux (par exemple, espaces), vous devez utiliser urlencode() effectue le codage de l'URL ;

  • copie Si le fichier cible existe déjà, il sera écrasé

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!

Étiquettes associées:
php
source:segmentfault.com
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal