KKUT Docs

Dizin Kütüphanesi

Dizinleri daha kolay yönetmek için geliştirilmiş sınıftır. # Kurulum Bu bileşen KUT ile birlikte gelir; ayrıca kurulum gerektirmez. ↓ Paket KUT ile birlikte gelir. # Yöntemler Folder::crea…

This article is currently available in Turkish. Its English translation is being prepared.

Dizinleri daha kolay yönetmek için geliştirilmiş sınıftır.

Kurulum

Bu bileşen KUT ile birlikte gelir; ayrıca kurulum gerektirmez.

↓ Paket KUT ile birlikte gelir.

Yöntemler

Folder::create(string $file, int $permission = 0755, bool $recursive = true) : bool
Folder::rename(string $oldName, string $newName): bool
Folder::copy(string $source, string $target): bool
Folder::change(string $name): bool
Folder::basePath(): string
Folder::fileInfo(string $dir, string $extension = NULL): array
Folder::info(string $dir) : object
Folder::disk(string $dir, string $type = 'free'): float
Folder::files(string $path, $extension = NULL, bool $pathType = false): array
Folder::allFiles(string $pattern = '*', bool $allFiles = false): array
Folder::permission(string $name, int $permission = 0755): bool
Folder::deleteEmpty(string $folder): bool
Folder::delete(string $name): bool
Folder::exists(string $name): bool

# 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/htdocs/kut
xampp7/public_html

# BasePath

Sistemin çalıştığı aktif çalışma dizin bilgisi döner.

Parametreler

return string

Kullanımlar

echo Folder::basePath();
xampp7/htdocs/kut 

# 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') );
Projects.php => array
(
        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 KUT 1.0’da desteklenir

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');
10090905600 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/') );
0 => string '.htaccess' ( length = 11 ),
1 => string 'Backend' ( length = 9 ),
2 => string 'Frontend' ( length = 10 ),
3 => string 'Projects.php' ( length = 14 )
output( Folder::files('Projects/', NULL, true) );
0 => string 'Projects/.htaccess' ( length = 20 ),
1 => string 'Projects/Backend' ( length = 18 ),
2 => string 'Projects/Any' ( length = 19 ),
3 => string 'Projects/Projects.php' ( length = 23 )
output( Folder::files('Projects/', 'php', true) );
0 => string 'Projects/Projects.php' ( length = 23 )
output( Folder::files('Projects/', ['php', 'dir'], true) );
0 => string 'Projects/Projects.php' ( length = 23 ),
1 => string 'Projects/Backend' ( length = 18 ),
2 => string 'Projects/Any' ( 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/') );
0 => string 'Projects/Backend' ( length = 18 ),
1 => string 'Projects/Any' ( length = 19 ),
2 => string 'Projects/Projects.php' ( length = 23 )
output( Folder::allFiles('Projects/', true) );
0 => string 'Projects/Admin/Controllers/Simplicity.php' ( length = 45 ),
1 => string 'Projects/Admin/Views/welcome.wizard.php' ( length = 43 ),
2 => string 'Projects/Any/Config/ClassMap.php' ( length = 39 ),
3 => string 'Projects/Any/Config/CryptoGraphy.php' ( length = 43 ),
4 => string 'Projects/Any/Config/Database.php' ( length = 39 ),
5 => string 'Projects/Any/Config/EncodingSupport.php' ( length = 46 ),
6 => string 'Projects/Any/Config/FileSystem.php' ( length = 41 ),
7 => string 'Projects/Any/Config/General.php' ( length = 38 ),
8 => string 'Projects/Any/Config/IndividualStructures.php' ( length = 51 ),
9 => string 'Projects/Any/Config/Masterpage.php' ( length = 41 ),
10 => string 'Projects/Any/Config/Project.php' ( length = 38 ),
11 => string 'Projects/Any/Config/Services.php' ( length = 39 ),
12 => string 'Projects/Any/Config/Starting.php' ( length = 39 ),
13 => string 'Projects/Any/Config/ViewObjects.php' ( length = 42 ),
14 => string 'Projects/Any/Controllers/Simplicity.php' ( length = 46 ),
15 => string 'Projects/Any/Libraries/index.html' ( length = 40 ),
16 => string 'Projects/Any/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') );
0 => string 'Projects/Projects.php' ( length = 23 )

# 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.
}
KUT Framework 1.0Katmanlı Uygulama Tabanı

Kur. Uyarla. Türet.