Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Artikel ini akan membawa anda melalui operasi fail dan direktori dalam PHP

Artikel ini akan membawa anda melalui operasi fail dan direktori dalam PHP

青灯夜游
青灯夜游ke hadapan
2022-12-23 19:56:125838semak imbas

Bagaimanakah PHP melaksanakan operasi fail dan direktori? Artikel berikut akan memberi anda pemahaman yang mendalam tentang operasi fail dan direktori HP. Saya harap ia akan membantu anda!

Artikel ini akan membawa anda melalui operasi fail dan direktori dalam PHP

Laluan dan Operasi Cakera


Laluan relatif dan laluan mutlak

Laluan mutlak: laluan bermula dari huruf pemacu di mana fail semasa terletak

Contohnya:
Contohnya, gambar 1.png
Artikel ini akan membawa anda melalui operasi fail dan direktori dalam PHP
Laluan mutlak gambar ini ialah

D:谷歌1231.png

Mari kita terangkan apakah rentetan laluan ini mewakili secara berasingan

  • D: (merujuk kepada huruf pemacu
  • (Dengan jadual ialah pemisah direktori
  • Petua: (Sistem pengendalian Windows menyokong garis miring ke hadapan dan garis miring ke belakang, sistem lain menyokong garis miring ke hadapan / , jadi garis miring ke hadapan boleh mengurangkan isu keserasian)

Laluan relatif: Laluan bermula dari direktori di mana fail dikendalikan terletak

Ini ialah 相对的概念, dan laluan yang sepadan dengan objek rujukan berbeza adalah berbeza

Mengapa anda mengatakan ini? .png
sebagai rujukan

Artikel ini akan membawa anda melalui operasi fail dan direktori dalam PHP

1.txtArtikel ini akan membawa anda melalui operasi fail dan direktori dalam PHP

  • (Ada titik di hadapan 1.)
  • ./1.txt2.txt

  • ( 2 The dua mata pertama)
  • Terangkan ../2.txt

    1.txt ialah fail dalam direktori yang sama seperti

    , jadi hanya 1 diperlukan di titik hadapan , titik ini mewakili direktori semasa
  • 2.txt sebagai direktori bawah, 1.png ialah
  • direktori atas
  • 2.txt, dua titik di sini ialah Mewakili direktori peringkat atas Saya percaya semua orang telah memahami laluan relatif dan laluan mutlak
  • Pemerolehan maklumat laluan fail


在这之前我们需要先理解一些概念Laluan:


/love/xianyu.txtNama direktori (nama nama) ialah / love

Sambungan fail (nama asas) ialah xianyu.txt
  • Sambungan (sambungan) ialah .txt
  • Nama fail (nama fail) ialah xianyu
  • Masukkan teks di bawah

pathinfo()

Untuk mendapatkan , anda boleh menggunakan fungsi

, fungsi ini akan mengembalikan

指定的路径和文件名pathinfo()关联数组

<?php
$xianyu = "/love/xianyu.php";
$result = pathinfo($xianyu);
foreach($result as $key=>$value){
    echo "$key=>$value\n";
}
?>
/*
输出:
dirname=>/love
basename=>xianyu.php
extension=>php
filename=>xianyu
*/

Pemerolehan cepat nama fail: basename() menggunakan fungsi dan bahagian

tidak perlu dibaca daripada

🎜>basename()快速获取指定文件文件名数组

<?php
$xianyu = "/love/xianyu.php";
echo $filepath."中的文件名是:".basename($xianyu);
?>
/*
中的文件名是:xianyu.php
*/
Dapatkan bahagian direktori laluan dengan cepat: dirname()

Gunakan fungsi , anda boleh menggunakan daripada

Bahagian

dirname()快速获取指定文件目录

Operasi Direktori
<?php
$filepath = "/love/xianyu.php";
echo $filepath."中的路径部分是:". dirname($filepath);
?>
/*
/love/xianyu.php中的路径部分是:/love
*/

Buka dan tutup direktori


Penanganan:

opendir (), closedir()

  • Pemegang boleh dianggap sebagai

    Dengan pemegang, anda boleh beroperasi pada direktori terbuka

返回值Buka direktori imej

<?php
$dir = "images";
if($dir_handle = opendir($dir))
{
echo "获取目录句柄成功!";
closedir($dir_handle); //记得释放句柄
}
else
{
echo "打开目录错误";
}
?>

Artikel ini akan membawa anda melalui operasi fail dan direktori dalam PHP
Lepaskan pemegangArtikel ini akan membawa anda melalui operasi fail dan direktori dalam PHP

  • Mengapa melepaskan pemegangnya? tidak akan dapat menulis, jadi melepaskan pemegang boleh menjimatkan sumber pelayan

    创建目录

    <?php
    mkdir("123")
    ?>

    删除目录

    <?php
    rmdir("123")
    ?>

    获取当前工作目录

    <?php
    echo getcwd()
    ?>

    改变当前工作目录

    <?php
    echo getcwd() . &#39;<br>&#39;; // 显示当前目录
    chdir(&#39;hhh&#39;); //改变当前目录
    echo getcwd() . &#39;<br>&#39;; // 显示当前目录
    ?>

    获取目录句柄条目

    • readdir()

    将一个参数名作为参数传递给函数readdir(),这个函数能返回目录下所有子目录和文件

    注意:调用一次返回一个!!

    <?php
    if ($handle = opendir(&#39;.&#39;)) {
    while (false !== ($file = readdir($handle))) {
    echo "$file\n";
    }
    closedir($handle);
    }
    ?>

    Artikel ini akan membawa anda melalui operasi fail dan direktori dalam PHP

    读取目录条目

    • scandir()

    直接返回指定目录下文件和子目录,并且按照要求排序(默认字母升序)

    <?php
    $dir1 = scandir("D:\新建文件夹 (2)");
    $dir2 = scandir("D:\新建文件夹 (2)",1);//降序排列
    print_r($dir1);
    print_r($dir2)
    ?>

    Artikel ini akan membawa anda melalui operasi fail dan direktori dalam PHP

    Artikel ini akan membawa anda melalui operasi fail dan direktori dalam PHP

    文件操作


    操作文件的一般步骤即:打开,读取或写入,关闭

    由于目录和文件本质上都属于文件,除了使用函数不同,很多操作都是相通的

    一般操作

    判断文件是否存在

    <?php
    if(file_exists("test.txt"))
    {
    //如果文件存在就执行操作
    }
    ?>
    //如果文件存在返回true,不存在返回false

    创建,打开,关闭文件

    • fopen(), fclose()

    <?php
    //以只读方式打开文件,将文件指针指向文件头
    $handle = fopen("test.txt", "r");
    //以读写方式打开,将文件指针指向文件头
    $handle = fopen("test.txt", "r+");
    //以写入方式打开,将文件指针指向文件头,并将文件大小截为0。如果文件不存在则尝试创建。
    $handle = fopen("test.txt", "w");
    //以读写方式打开,将文件指针指向文件头,并将文件大小截为0。如果文件不存在则尝试创建。
    $handle = fopen("test.txt", "w+");
    //以写入方式打开文件,将文件指针指向文件末尾。如果文件不存在则尝试创建。
    $handle = fopen("test.txt", "a");
    //以读写方式打开文件,将文件指针指向文件末尾。如果文件不存在则尝试创建。
    $handle = fopen("test.txt", "a+");
    fclose()
    ?>

    读取文件

    • fread(), file_get_contents(), file()

    <?php
    //需要使用fopen,fread,fclose来进行文件的读取操作
    $filename = "test.txt";
    $handle = fopen($filename, "r");
    $contents = fread($handle, filesize($filename)); //fread需要传入两个参数,第一个参数为
    文件句柄,第二个参数为最大读取的字节数
    fclose($handle);
    //更加简洁的方式
    file_get_contents($filename)
    ?>

    写入文件

    • fwrite(), file_put_contents()

    <?php
    //需要fopen,fwrite,fclose来进行文件的写入操作
    $handle = fopen("test.txt","w");
    fwrite($handle,"添加文字到文件中");//fwrite接受两个参数作为输入,$handle为文件句柄,"添加文
    字到文件中"为需要写入的内容
    fclose($handle);
    //更加简洁的方式
    file_put_contents("test.txt", "使用file_put_contents()函数写入的内容")
    ?>

    文件和目录基本操作

    删除文件

    • unlink()

    <?php
    $file = "temp.txt";
    unlink($file);
    ?>

    复制文件

    • copy()

    <?php
    $sourceFile = "html/cache.txt"; //被复制的文件必须确保存在
    $targetFile = "html/copyCache.txt";
    copy($sourceFile, $targetFile)
    ?>

    移动,重命名文件或目录

    • rename()

    <?php
    //使用rename()函数重命名一个文件或目录
    rename(&#39;test.txt&#39;, &#39;rename.txt&#39;) //将test.txt文件重命名为rename.txt
    rename(&#39;test&#39;,&#39;rename&#39;) //将test目录重命名为rename
    //使用rename()函数移动文件,并改名
    rename("test.txt","test/a.txt");//将test.txt移动到test文件夹下,并改名为a.txt
    //使用rename()函数移动目录到目标目录
    rename("test","html/test");
    ?>

    推荐学习:《PHP视频教程

Atas ialah kandungan terperinci Artikel ini akan membawa anda melalui operasi fail dan direktori dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:csdn.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam