php中mkdir函数递归创建目录(文件夹)
在php中mkdir函数是创建目录它自身是不可以递归创建目录了,我们需要遍历进行目录然后调用mkdir即可,下面来看一下操作方法。
例
<?php /** * Makes directory and returns BOOL(TRUE) if exists OR made. * * @param $path Path name * @return bool */ function rmkdir($path, $mode = 0755) { $path = rtrim(preg_replace(array( "/\/", "//{2,}/" ) , "/", $path) , "/"); $e = explode("/", ltrim($path, "/")); if (substr($path, 0, 1) == "/") { $e[0] = "/" . $e[0]; } $c = count($e); $cp = $e[0]; for ($i = 1; $i < $c; $i++) { if (!is_dir($cp) && !@mkdir($cp, $mode)) { return false; } $cp.= "/" . $e[$i]; } return @mkdir($path, $mode); } ?>
例2
Somehow the recursive version of mkdir didn't work for me on Mac and the workaraounds listed
below alsow didn't work for me, so heres my solution:
<?php function mkdir_r($dirName, $rights = 0777) { $dirs = explode('/', $dirName); $dir = ''; foreach ($dirs as $part) { $dir.= $part . '/'; if (!is_dir($dir) && strlen($dir) > 0) mkdir($dir, $rights); } } ?>
Tested and works ;)
例3
<?php function mkdirs($dir) { if (!is_dir($dir)) { if (!mkdirs(dirname($dir))) { return false; } if (!mkdir($dir, 0777)) { return false; } } return true; } function rmdirs($dir) { $d = dir($dir); while (false !== ($child = $d->read())) { if ($child != '.' && $child != '..') { if (is_dir($dir . '/' . $child)) rmdirs($dir . '/' . $child); else unlink($dir . '/' . $child); } } $d->close(); rmdir($dir); } ?>
三个创建目录的函数都有自己的优点,这里我也没有一个个测试了,只使用了第二个感觉非常的不错。
永久链接:
转载随意!带上文章地址吧。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



1. Perbezaan antara Iterator dan foreach ialah perbezaan polimorfik (lapisan bawah foreach ialah Iterator ialah jenis antara muka, dan ia tidak mengambil berat tentang jenis pengumpulan atau tatasusunan untuk dan untuk setiap perlu mengetahui jenisnya). koleksi pertama, dan juga jenis elemen dalam koleksi 1. Mengapa dikatakan bahawa lapisan bawah foreach adalah kod yang ditulis oleh Iterator: Kod decompiled: 2. Perbezaan antara keluarkan dalam foreach dan iterator Pertama, lihat di Manual Pembangunan Java Alibaba, tetapi tiada ralat akan dilaporkan dalam kes 1, dan ralat akan dilaporkan dalam kes 2 (java. util.ConcurrentModificationException) terlebih dahulu

Langkah-langkah untuk PHP untuk menentukan bilangan gelung foreach: 1. Buat tatasusunan "$fruits"; 2. Buat pemboleh ubah pembilang "$counter" dengan nilai awal 0 melalui tatasusunan, dan Tingkatkan nilai pembolehubah pembilang dalam badan gelung, dan kemudian keluarkan setiap elemen dan indeksnya 4. Keluarkan nilai pembolehubah pembilang di luar gelung "foreach" untuk mengesahkan elemen yang dicapai gelung;

Artikel ini akan menerangkan secara terperinci bagaimana PHP mengembalikan tatasusunan selepas membalikkan nilai utama Editor berpendapat ia agak praktikal, jadi saya berkongsi dengan anda sebagai rujukan saya harap anda boleh memperoleh sesuatu selepas membaca artikel ini. PHP key value flip Array key value flip ialah operasi pada tatasusunan yang menukar kunci dan nilai dalam tatasusunan untuk menjana tatasusunan baharu dengan kunci asal sebagai nilai dan nilai asal sebagai kunci. Kaedah pelaksanaan Dalam PHP, anda boleh melakukan pembalik nilai kunci tatasusunan melalui kaedah berikut: fungsi array_flip(): Fungsi array_flip() digunakan khas untuk operasi flip nilai kunci. Ia menerima tatasusunan sebagai hujah dan mengembalikan tatasusunan baharu dengan kunci dan nilai ditukar. $original_array=[

Fungsi letupan dalam PHP ialah fungsi yang digunakan untuk memisahkan rentetan kepada tatasusunan Ia sangat biasa dan fleksibel. Dalam proses menggunakan fungsi letupan, kami sering menghadapi beberapa ralat dan masalah Artikel ini akan memperkenalkan penggunaan asas fungsi letupan dan menyediakan beberapa kaedah untuk menyelesaikan laporan ralat. 1. Penggunaan asas fungsi explode Dalam PHP, sintaks asas fungsi explode adalah seperti berikut: explode(string$separator,string$stri

Artikel ini akan menerangkan secara terperinci nilai ASCII bagi rentetan pertama yang dikembalikan oleh PHP Editor berpendapat ia sangat praktikal, jadi saya berkongsi dengan anda sebagai rujukan saya harap anda boleh memperoleh sesuatu selepas membaca artikel ini. PHP mengembalikan nilai ASCII bagi aksara pertama rentetan Pengenalan Dalam PHP, mendapatkan nilai ASCII bagi aksara pertama rentetan ialah operasi biasa yang melibatkan pengetahuan asas pemprosesan rentetan dan pengekodan aksara. Nilai ASCII digunakan untuk mewakili nilai angka aksara dalam sistem komputer dan penting untuk perbandingan aksara, penghantaran data dan penyimpanan. Proses mendapatkan nilai ASCII bagi aksara pertama rentetan melibatkan langkah berikut: Dapatkan Rentetan: Tentukan rentetan yang anda ingin dapatkan nilai ASCII. Ia boleh menjadi pembolehubah atau pemalar rentetan

Tajuk: Ralat dan penyelesaian biasa apabila menggunakan fungsi explode dalam PHP Dalam PHP, fungsi explode ialah fungsi biasa yang digunakan untuk memisahkan rentetan kepada tatasusunan. Walau bagaimanapun, beberapa ralat biasa boleh berlaku disebabkan penggunaan yang tidak betul atau format data yang salah. Artikel ini akan menganalisis masalah yang mungkin anda hadapi apabila menggunakan fungsi letupan dan menyediakan penyelesaian serta contoh kod khusus. Kesilapan 1: Parameter pembatas tidak diluluskan. Apabila menggunakan fungsi letupan, salah satu kesilapan yang paling biasa ialah parameter pembatas tidak diluluskan.

Artikel ini akan menerangkan secara terperinci bagaimana PHP mengembalikan rentetan dari kedudukan mula ke kedudukan akhir rentetan dalam rentetan lain Editor berpendapat ia agak praktikal, jadi saya berkongsi dengan anda sebagai rujukan artikel ini. Anda boleh memperoleh sesuatu daripada artikel ini. Gunakan fungsi substr() dalam PHP untuk mengekstrak subrentetan daripada rentetan Fungsi substr() boleh mengekstrak aksara dalam julat tertentu daripada rentetan. Sintaksnya adalah seperti berikut: substr(rentetan,mula,panjang) di mana: rentetan: rentetan asal dari mana subrentetan itu akan diekstrak. mula: Indeks kedudukan permulaan subrentetan (bermula dari 0). panjang (pilihan): Panjang subrentetan. Jika tidak dinyatakan, maka

Artikel ini akan menerangkan secara terperinci tentang elemen semasa dalam tatasusunan yang dikembalikan oleh PHP Editor berpendapat ia agak praktikal, jadi saya berkongsi dengan anda sebagai rujukan saya harap anda boleh memperoleh sesuatu selepas membaca artikel ini. Dapatkan elemen semasa dalam tatasusunan PHP PHP menyediakan pelbagai kaedah untuk mengakses dan memanipulasi tatasusunan, termasuk mendapatkan elemen semasa dalam tatasusunan. Berikut memperkenalkan beberapa teknik yang biasa digunakan: 1. current() function Fungsi current() mengembalikan elemen yang sedang ditunjuk oleh penunjuk dalaman tatasusunan. Penunjuk pada mulanya menunjuk kepada elemen pertama tatasusunan. Gunakan sintaks berikut: $currentElement=current($array);2.key() function key() fungsi mengembalikan elemen yang sedang ditunjuk oleh penunjuk dalaman tatasusunan
