search
HomeBackend DevelopmentPHP TutorialDetailed introduction to php file processing functions (with examples)

This article brings you a detailed introduction to PHP file processing functions (with examples). It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.

PHP can easily operate directories and files, including creating, reading, modifying, deleting, etc.

mkdir

bool mkdir ( string $pathname [, int $mode = 0777 [, bool $recursive = false [, resource $context ]]] )
Try to create a new directory specified by pathname.

mkdir can create a directory specified by pathname. The default mode is 0777, which is ignored under windows and returns false on failure.

<?php mkdir(&#39;./test&#39;);// 在当前目录创建 test 目录

rmdir

bool rmdir ( string $dirname [, resource $context ] )
Try to delete the directory specified by dirname. The directory must be empty and must have appropriate permissions. Failure will generate an E_WARNING level error.

As shown above, rmdir can delete the directory. It should be noted that the directory must be empty and must have permissions . If it fails, false will be returned. Example

<?php rmdir(&#39;./test&#39;);// 删除当前目录下的 test 目录。

file_put_contents

int file_put_contents ( string $filename , mixed $data [, int $flags = 0 [, resource $context ]] )
has the same function as calling fopen(), fwrite() and fclose() in sequence.

file_put_contents Write data into the filename file. If there is no such file, create it. If it fails, it returns false. If it succeeds, it returns the number of bytes written. Example

<?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 文件中,追加数据

file_get_contents

string file_get_contents ( string $filename [, bool $use_include_path = false [, resource $context [, int $offset = -1 [, int $maxlen ]]]] )
Same as file(), except file_get_contents() reads the file into a string. The content with a length of maxlen will be read starting from the position specified by the parameter offset.

file_get_cntents reads the content in filename and returns a string. If it fails, it returns false. Example

<?php echo file_get_contents(&#39;./test.txt&#39;);// 输出当前目录下 test.txt 的内容
bool unlink ( string $filename [, resource $context ] )
Delete filename. Similar to Unix C's unlink() function. An E_WARNING level error is generated when an error occurs.

unlink delete filename file, also need to pay attention to permissions. Example

<?php unlink(&#39;./test.txt&#39;);// 删除当前目录的 test.txt

rename

bool rename ( string $oldname , string $newname [, resource $context ] )
Try to rename oldname to newname.

rename can not only rename files, but also move files. If it fails, it returns false. Example

<?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下

copy

bool copy ( string $source , string $dest [, resource $context ] )
Copy files from source to dest.

As shown above, false is returned on failure. Examples

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

Examples and Comments

Here are a few examples that will be used at work or in interviews.

<?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 '
  • ' . $path . '/' . $line . '
  • ';     }     echo ''; } /**  * 删除目录下所有文件  * @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); }

    Note

    • The recursive parameter in mkdir de can create directories nested;

    • the flags parameter in file_put_contents , can be combined, refer to the link for details;

    • file_put_contents may also return a non-Boolean value equivalent to false, use === to judge;

    • file_get_contents You can also open a URL to get web page content;

    • file_get_contents If you want to open a URL with special characters (for example, spaces), you need to use urlencode( ) URL encoding;

    • copy If the target file already exists, it will be overwritten;

    The above is the detailed content of Detailed introduction to php file processing functions (with examples). For more information, please follow other related articles on the PHP Chinese website!

    Statement
    This article is reproduced at:segmentfault. If there is any infringement, please contact admin@php.cn delete
    Optimize PHP Code: Reducing Memory Usage & Execution TimeOptimize PHP Code: Reducing Memory Usage & Execution TimeMay 10, 2025 am 12:04 AM

    TooptimizePHPcodeforreducedmemoryusageandexecutiontime,followthesesteps:1)Usereferencesinsteadofcopyinglargedatastructurestoreducememoryconsumption.2)LeveragePHP'sbuilt-infunctionslikearray_mapforfasterexecution.3)Implementcachingmechanisms,suchasAPC

    PHP Email: Step-by-Step Sending GuidePHP Email: Step-by-Step Sending GuideMay 09, 2025 am 12:14 AM

    PHPisusedforsendingemailsduetoitsintegrationwithservermailservicesandexternalSMTPproviders,automatingnotificationsandmarketingcampaigns.1)SetupyourPHPenvironmentwithawebserverandPHP,ensuringthemailfunctionisenabled.2)UseabasicscriptwithPHP'smailfunct

    How to Send Email via PHP: Examples & CodeHow to Send Email via PHP: Examples & CodeMay 09, 2025 am 12:13 AM

    The best way to send emails is to use the PHPMailer library. 1) Using the mail() function is simple but unreliable, which may cause emails to enter spam or cannot be delivered. 2) PHPMailer provides better control and reliability, and supports HTML mail, attachments and SMTP authentication. 3) Make sure SMTP settings are configured correctly and encryption (such as STARTTLS or SSL/TLS) is used to enhance security. 4) For large amounts of emails, consider using a mail queue system to optimize performance.

    Advanced PHP Email: Custom Headers & FeaturesAdvanced PHP Email: Custom Headers & FeaturesMay 09, 2025 am 12:13 AM

    CustomheadersandadvancedfeaturesinPHPemailenhancefunctionalityandreliability.1)Customheadersaddmetadatafortrackingandcategorization.2)HTMLemailsallowformattingandinteractivity.3)AttachmentscanbesentusinglibrarieslikePHPMailer.4)SMTPauthenticationimpr

    Guide to Sending Emails with PHP & SMTPGuide to Sending Emails with PHP & SMTPMay 09, 2025 am 12:06 AM

    Sending mail using PHP and SMTP can be achieved through the PHPMailer library. 1) Install and configure PHPMailer, 2) Set SMTP server details, 3) Define the email content, 4) Send emails and handle errors. Use this method to ensure the reliability and security of emails.

    What is the best way to send an email using PHP?What is the best way to send an email using PHP?May 08, 2025 am 12:21 AM

    ThebestapproachforsendingemailsinPHPisusingthePHPMailerlibraryduetoitsreliability,featurerichness,andeaseofuse.PHPMailersupportsSMTP,providesdetailederrorhandling,allowssendingHTMLandplaintextemails,supportsattachments,andenhancessecurity.Foroptimalu

    Best Practices for Dependency Injection in PHPBest Practices for Dependency Injection in PHPMay 08, 2025 am 12:21 AM

    The reason for using Dependency Injection (DI) is that it promotes loose coupling, testability, and maintainability of the code. 1) Use constructor to inject dependencies, 2) Avoid using service locators, 3) Use dependency injection containers to manage dependencies, 4) Improve testability through injecting dependencies, 5) Avoid over-injection dependencies, 6) Consider the impact of DI on performance.

    PHP performance tuning tips and tricksPHP performance tuning tips and tricksMay 08, 2025 am 12:20 AM

    PHPperformancetuningiscrucialbecauseitenhancesspeedandefficiency,whicharevitalforwebapplications.1)CachingwithAPCureducesdatabaseloadandimprovesresponsetimes.2)Optimizingdatabasequeriesbyselectingnecessarycolumnsandusingindexingspeedsupdataretrieval.

    See all articles

    Hot AI Tools

    Undresser.AI Undress

    Undresser.AI Undress

    AI-powered app for creating realistic nude photos

    AI Clothes Remover

    AI Clothes Remover

    Online AI tool for removing clothes from photos.

    Undress AI Tool

    Undress AI Tool

    Undress images for free

    Clothoff.io

    Clothoff.io

    AI clothes remover

    Video Face Swap

    Video Face Swap

    Swap faces in any video effortlessly with our completely free AI face swap tool!

    Hot Tools

    EditPlus Chinese cracked version

    EditPlus Chinese cracked version

    Small size, syntax highlighting, does not support code prompt function

    WebStorm Mac version

    WebStorm Mac version

    Useful JavaScript development tools

    MantisBT

    MantisBT

    Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

    PhpStorm Mac version

    PhpStorm Mac version

    The latest (2018.2.1) professional PHP integrated development tool

    Zend Studio 13.0.1

    Zend Studio 13.0.1

    Powerful PHP integrated development environment