Dosya Kütüphanesi


    × Bunları biliyor muydunuz?
"Libraries/ dizini içine taşınan veya bu dizinde oluşturulan kütüphaneler hiç bir tanımlama gerektirmeden kullanılabilir. "


Dosyaları işlemleri için oluşturulmuş kütüphanedir.

 

 

# Kurulum


ZN SE ve ZN CE dağıtımları için terminal kurulum komutu.

↓ composer require znframework/package-filesystem

 

 

# Yöntemler


1.0.0 String read(String $file)
1.0.0 String contents(String $file)
1.0.0 Object find(String $file, String $data)
1.0.0 Bool create(String $name)
1.0.0 Int write(String $file, String $data)
1.0.0 Int append(String $file, String $data)
4.0.3 String replace(String $name, Mixed $data, Mixed $replace)
5.8.2.8 String reglace(String $name, String $pattern, String $replace)
4.0.3 Mixed truncate(String $file, Int $limit = 0, String $mode = 'r+')
1.0.0 Bool delete(String $name)
1.0.0 Bool rename(String $oldName, String $newName)
1.0.0 Bool permission(String $file, Int $permission = 0755)
2.0.5 Object info(String $file)
2.0.0 Float size(String $file, String $type = 'b', Int $decimal = 2)
2.0.0 String createDate(String $file, String $type = 'd.m.Y G:i:s')
2.0.0 String changeDate(String $file, String $type = 'd.m.Y G:i:s')
2.0.3 Int owner(String $file)
2.0.3 Int group(String $file)
3.0.0 Void cleanCache(String $fileName = NULL, Bool $real = false)
3.0.2 Int rowCount(String $file = '/', Bool $recursive = true)
3.0.3 Bool createZip(String $path, Array $data)
1.0.6 Bool zipExtract(String $source, String $target = NULL)
1.0.0 Void download(String $file)

 

 

# Read / Contents (ZN >= 1.0.0)


Dosya okumak için kullanılır.

Parametreler

String $file Dosya yolu.
Return String

Kullanımlar

File::read('example.txt');

 

 

# Find (ZN >= 1.0.6)


Dosyanın içinde arama yapmak için kullanılır.

Parametreler

String $file Dosya yolu.
String $data Data.
Return Object index Aranan kelimenin konumu.
contents Dosyanın içeriği.

Kullanımlar

$data = File::find('example.txt', 'example');
\Output::writeLine('Index:{0}, Contents:{1}', [$data->index, $data->contents]);
Index:1, Contents:example-data

 

 

# Create (ZN >= 1.0.0)


Dosya oluşturmak için kullanılır. Eğer oluşturulacak dosya ile aynı isimde dosya varsa oluşturma işlemi başarısız olur.

Parametreler

String $file Dosya yolu.
Return Bool

Kullanımlar

File::create('example.txt');

 

 

# Write (ZN >= 1.0.0)


Dosyaya yeniden veri yazdırmak için kullanılır. Ancak dosyada daha önceden veri varsa veriler silinerek yeniden yazılır.

Parametreler

String $file Dosya yolu.
String $data Data.
Return Int

Kullanımlar

File::write('example.txt', 'abc');
echo File::read('example.txt');
abc
File::write('example.txt', 'xxx');
echo File::read('example.txt'); 
xxx

 

 

# Append (ZN >= 1.0.0)


Dosyanın devamına veri yazdırmak için kullanılır.

Parametreler

String $file Dosya yolu.
String $data Data.
Return Int

Kullanımlar

File::append('example.txt', 'abc');
echo File::read('example.txt');
abc
File::append('example.txt', 'xxx');
echo File::read('example.txt'); 
abcxxx

 

 

# Replace (ZN >= 4.0.3)


Dosyadaki veriler üzerinde değiştirme işlemi gerçekleştirmek için kullanılır.

Parametreler

String $file Dosya yolu.
String $data Değiştirilecek data.
String $replace Yeni data.
Return String

Kullanımlar

echo File::replace('example.txt', 'xxx', 'yyy');
abcyyy

 

 

# Reglace (ZN >= 4.0.3)


Dosyadaki veriler üzerinde ZN'nin regex yöntemleri ile değiştirme işlemi gerçekleştirmek için kullanılır.

Parametreler

String $file Dosya yolu.
String $pattern Değiştirilecek düzenli ifade deseni.
String $replace Yeni data.
Return String

Kullanımlar

echo File::reglace('example.txt', '{word}', 'x');
x

 

 

# Truncate (ZN >= 4.0.3) / Limit (ZN <= 4.0.22)


Bir dosyayı belli bir uzunlukta budar.

Parametreler

String $file Dosya yolu.
Int $limit = 0 Sınırlandırılacak miktar.
String $mode = 'r+' Mod.
Return Void

Kullanımlar

\Output::writeLine(File::read('example.text'));
File::truncate('example.txt', 2);
\Output::writeLine(File::read('example.txt'));
abcd
ab

 

 

# Delete (ZN >= 1.0.0)


Dosya silmek için kullanılır.

Parametreler

String $file Dosya yolu.
Return Bool

Kullanımlar

File::delete('example.txt');

 

 

# Rename (ZN >= 1.0.0)


Dosya adını değiştirmek için kullanılır.

Parametreler

String $file Dosya yolu.
String $newName Yeni isim.
Return Bool

Kullanımlar

File::rename('example.txt', 'new_example.txt');

 

 

# Permission (ZN >= 1.0.0)


Dosya yetkilerini düzenlemek için kullanılır.

Parametreler

String $file Dosya yolu.
Int $permission = 0755 Yetki değeri.
Return Bool

Kullanımlar

File::permission('example.txt', 0600);

 

 

# Info (ZN >= 2.0.5)


Dosya hakkında bazı bilgilerin yer aldığı obje bilgisi döner.

Parametreler

String $file Dosya yolu.
Return Object basename Dosya adı.
size Dosya boyutu.
date Dosya oluşturma tarihi.
readable Dosya okunabiliği.
writable Dosyanın yazılabilirliği.
executable Dosyanın çalıştırılabilirliği.
permission Dosyanın yetkisi.

Kullanımlar

output( File::info('robots.txt') );
basename   => string 'robots.txt' ( length = 12 )
size       => integer 79 ( length = 2 )
date       => integer 1471293018 ( length = 10 )
readable   => boolean true ( length = 4 )
writable   => boolean true ( length = 4 )
executable => boolean false ( length = 5 )
permission => integer 33206 ( length = 5 )

 

 

# Size (ZN >= 2.0.0)


Dosya boyutu hakkında bilgi almak için kullanılır.

Parametreler

String $file Dosya yolu.
String $type = 'b' Çıktı türü.
Int $decimal = 2 Ondalıklı rakam adeti.
Return Float

Kullanımlar

\Output::writeLine( File::size('zeroneed.php') );
\Output::writeLine( File::size('zeroneed.php', 'mb', 1) );
\Output::writeLine( File::size('zeroneed.php', 'mb', 2) );
7241
0
0.01 

 

 

# CreateDate (ZN >= 2.0.0)


Dosyanın oluşturulma tarihi bilgisini verir.

Parametreler

String $file Dosya yolu.
String $type = 'd.m.Y G:i:s' Gösterim türü.
Return String

Kullanımlar

echo File::createDate('robots.txt');
15.08.2016 5:21:24 

 

 

# ChangeDate (ZN >= 2.0.0)


Dosyanın değiştirilme tarihi bilgisini verir.

Parametreler

String $file Dosya yolu.
String $type = 'd.m.Y G:i:s' Gösterim türü.
Return String

Kullanımlar

echo File::changeDate('robots.txt');
15.08.2016 22:30:18  

 

 

# Owner (ZN >= 2.0.3)


Dosya sahibini verir.

Parametreler

String $file Dosya yolu.
Return Mixed

Kullanımlar

echo File::owner('robots.txt');
0

 

 

# Group (ZN >= 2.0.3)


Dosyanın sahibi olan grubu verir.

Parametreler

String $file Dosya yolu.
Return Mixed

Kullanımlar

echo File::group('robots.txt');
0

 

 

# CleanCache (ZN >= 3.0.0)


Dosya durum önbelleğini siler.

Parametreler

String $file Dosya yolu.
Bool $realPath = false Gerçek yol.
Return Mixed

Kullanımlar

File::cleanCache();

 

 

# RowCount (ZN >= 3.0.2)


Dosyada yer alan kodların satır sayısı verir. Gerek tek bir dosyada gerekse de bir dizin içinde yer alan tüm dosyalarda satır sayısı hesaplayabilir.

Parametreler

String $file Dosya yolu.
Bool $recursive = false İç içe tarama.
Return Mixed

Kullanımlar

\Output::writeLine( File::rowCount('example.txt') );
\Output::writeLine( File::rowCount('Example/') );
\Output::writeLine( File::rowCount('Example/', true) );
1
5887
11774 

 

 

# CreateZip (ZN >= 3.0.3)


Bir ZIP dosyası oluşturmak için kullanılır. 2. parametre ile hangi dosyaların zipleneceği belirlenir.

Parametreler

String $path Zip dosyası yolu.
Array $data Sıkıştırmaya dahil edilecek dosyalar.
Return Bool

Kullanımlar

File::createZip('example.zip', ['example.txt', 'Example/']);

 

 

# ZipExtract (ZN >= 1.0.6)


Bir zip dosyasında yer alan dosyaları dışarı çıkarmak için kullanılır.

Parametreler

String $source Zip dosyası yolu.
String $target Çıkarılacak dizin.
Return Bool

Kullanımlar

File::zipExtract('example.zip', 'ExampleZip/');

 

 

# Download (ZN >= 1.0.0)


Dosya indirme işlemini başlatır.

Parametreler

String $file Dosya yolu.
Return Void

Kullanımlar

File::download('xx/xa/file.png');