Dizin Kütüphanesi
"Başlangıç kontrolcüsü üzerinden $this nesnesini data olarak göndererek statik olmayan sınıflara ilgili data üzerinden erişebilirsiniz."
Dizinleri daha kolay yönetmek için geliştirilmiş sınıftır.
# Kurulum
ZN dağıtımları için kurulum gerekmez.
↓ composer require znframework/package-filesystem
# Yöntemler
# Create
Dizin oluşturmak için kullanılır.
Parametreler
string $path | Dizin yolu ve adı. |
int $permission = 0755 | Erişim yetkisi. |
bool $recursive = true | İç içe dizin oluşturabilme. |
return bool |
Kullanımlar
Folder::create('x/OrnekDizin', 0755);
# Rename
Dizin adını değiştirmek için kullanılır.
Parametreler
string $path | Dizin yolu ve adı. |
string $newName | Yeni ad. |
return bool |
Kullanımlar
Folder::rename('Example/OldFolder', 'Example/NewFolder');
Dizin isimlendirmesi yapılırken dosya konumu değiştirilirse dizinin ismi değişmekle beraber ilgili konuma taşınır.
Folder::rename('Example/OldFolder', 'Different/NewFolder');
Sadece dizinin konumu değiştirilirse taşıma işlemi yapılır.
Folder::rename('Example/OldFolder', 'Different/OldFolder');
# Copy
Bir dizin veya dosyayı mevcut konumundan istenilen konuma kopyalamak için kullanılır. Bu işlem dizinin içindeki dosyalar içinde geçerlidir. Yani dizin kopyalanırken içindeki dosya ve dizinler ile kopyalanır.
Parametreler
string $source | Kaynak. |
string $target | Hedef. |
return bool |
Kullanımlar
Folder::copy('Source/Example', 'Target/CopyExample');
# Change
PHP'nin geçerli çalışma dizinini değiştirmek için kullanılır.
Parametreler
string $name | Dizin adı. |
return bool |
Kullanımlar
echo getcwd();
Folder::change('xampp7/public_html');
echo getcwd();
xampp7/public_html
# BasePath
Sistemin çalıştığı aktif çalışma dizin bilgisi döner.
Parametreler
return | string |
Kullanımlar
echo Folder::basePath();
# FileInfo
Belirtilen dizine ait dosyalar hakkında bilgi almak için kullanılır.
Parametreler
string $dirName | Dizin yolu ve adı. | |
string $extension = NULL | Hangi uzantılı dosyaların listeleneceği. Dizinler için kullanılan uzantıdır. Diğerleri için mevcut dosya uzantılının kullanılması yeterlidir. Eğer hiç bir parametre belirtilmez ise tüm dosyalar hakkında bilgiler listelenir. | |
Seçenekler | dir ve diğer dosya uzantıları | |
return array |
Kullanımlar
output( Folder::fileInfo('Projects', 'php') );
(
basename => string 'Projects.php' ( length = 14 ),
size => integer 4245 ( length = 4 ),
date => integer 1471647303 ( length = 10 ),
readable => boolean true ( length = 4 ),
writable => boolean true ( length = 4 ),
executable => boolean false ( length = 5 ),
permission => integer 33206 ( length = 5 ),
)
Projects/ dizininde .php uzantılı dosyaların bilgilerini aldık.
# Info [6.2.1][2021-01-28]
Dizin hakkında bilgiler içeren bir object türde veri döndürür. File::info() kullanımı gibidir.
Parametreler
string $dir | Dizin yolu ve adı. | |
return object |
Kullanımlar
output( Folder::info('Projects') );
# Disk
Belirtilen dizinin ne kadar alanının kullanılabilir veya toplam boyutunun ne olduğu hakkında bilgi almak için kullanılır. Yöntem byte cinsinden sayısal verir döndürür.
Parametreler
string $dir | Dizin yolu ve adı. | |
string $type = 'free' | Tür. | |
free | Dizinin kullanılabilir miktarını verir. | |
total | Dizinin toplam boyutunu verir. | |
return float |
Kullanımlar
output( Folder::disk('Projects') . ' Bytes' );
output( Folder::disk('Projects', 'total') . ' Bytes');
119926681600 Bytes
# Files
Dizine ait dosyaların listesini almak için kullanılır.
Parametreler
string $dirName | Dizin yolu ve adı. |
string | array $extension = NULL | Hangi uzantılı dosyaların listeleneceği. |
bool $isPath = false | Dosyalar yol bilgileri ile birlikte gösterilsin mi? |
return array |
Kullanımlar
output( Folder::files('Projects/') );
1 => string 'Backend' ( length = 9 ),
2 => string 'Frontend' ( length = 10 ),
3 => string 'Projects.php' ( length = 14 )
output( Folder::files('Projects/', NULL, true) );
1 => string 'Projects/Backend' ( length = 18 ),
2 => string 'Projects/Frontend' ( length = 19 ),
3 => string 'Projects/Projects.php' ( length = 23 )
output( Folder::files('Projects/', 'php', true) );
output( Folder::files('Projects/', ['php', 'dir'], true) );
1 => string 'Projects/Backend' ( length = 18 ),
2 => string 'Projects/Frontend' ( length = 19 )
# AllFiles
Dizine ait dosyaların listesini dosya yolları ile birlikte almak için kullanılır. files() yönteminden farkı uzantı ayrımı yapılmaması ve dizin içinde yer alan dizinlerde de tarama yapılabilmesidir.
Parametreler
string $dirName | Dizin yolu ve adı. |
bool $isPath = false | Dosyalar yol bilgileri ile birlikte gösterilsin mi? |
return array |
Kullanımlar
output( Folder::allFiles('Projects/') );
1 => string 'Projects/Frontend' ( length = 19 ),
2 => string 'Projects/Projects.php' ( length = 23 )
output( Folder::allFiles('Projects/', true) );
1 => string 'Projects/Backend/Views/welcome.wizard.php' ( length = 43 ),
2 => string 'Projects/Frontend/Config/ClassMap.php' ( length = 39 ),
3 => string 'Projects/Frontend/Config/CryptoGraphy.php' ( length = 43 ),
4 => string 'Projects/Frontend/Config/Database.php' ( length = 39 ),
5 => string 'Projects/Frontend/Config/EncodingSupport.php' ( length = 46 ),
6 => string 'Projects/Frontend/Config/FileSystem.php' ( length = 41 ),
7 => string 'Projects/Frontend/Config/General.php' ( length = 38 ),
8 => string 'Projects/Frontend/Config/IndividualStructures.php' ( length = 51 ),
9 => string 'Projects/Frontend/Config/Masterpage.php' ( length = 41 ),
10 => string 'Projects/Frontend/Config/Project.php' ( length = 38 ),
11 => string 'Projects/Frontend/Config/Services.php' ( length = 39 ),
12 => string 'Projects/Frontend/Config/Starting.php' ( length = 39 ),
13 => string 'Projects/Frontend/Config/ViewObjects.php' ( length = 42 ),
14 => string 'Projects/Frontend/Controllers/Simplicity.php' ( length = 46 ),
15 => string 'Projects/Frontend/Libraries/index.html' ( length = 40 ),
16 => string 'Projects/Frontend/Views/welcome.wizard.php' ( length = 44 ),
17 => string 'Projects/Projects.php' ( length = 23 )
Desen Kullanımı
Eğer istenirse 1. parametre için desende yazabilirsiniz.
output( Folder::allFiles('Projects/*.php') );
# Permission
Dizin erişim yetkilerini düzenlemek için kullanılır.
Parametreler
string $dirName | Dizin yolu ve adı. |
int $permission = 0755 | Erişim yetkisi. |
return bool |
Kullanımlar
Folder::permission('Example/', 0644);
# DeleteEmpty
İçi boş dizini silmek için kullanılır.
Parametreler
string $dirName | Dizin yolu ve adı. |
return bool |
Kullanımlar
Folder::deleteEmpty('Example/');
# Delete
Dizin silmek için kullanılır. deleteEmpty() yönteminden farkı dizini içindeki dosyalarla birlikte siler.
Parametreler
string $dirName | Dizin yolu ve adı. |
return bool |
Kullanımlar
Folder::delete('Example/');
# Exists
Dizinin var olup olmadığını kontrol eder.
Parametreler
string $dirName | Dizin yolu ve adı. |
return bool |
Kullanımlar
if( Folder::exists('Example/') )
{
# Dizin varsa kodlarınız.
}