", basename($yol)); printf("Uzantı içermeyen dosya adı: %s
", basename($yol, ".txt")); Bir yoldaki (path) dosya dizini alma printf("Klasör yolu: %s", dirname($yol)); //Klasör yolu: /home/www/data"> ", basename($yol)); printf("Uzantı içermeyen dosya adı: %s
", basename($yol, ".txt")); Bir yoldaki (path) dosya dizini alma printf("Klasör yolu: %s", dirname($yol)); //Klasör yolu: /home/www/data">

Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

BÖTE 323: Internet Tabanlı Programlama Dr. Ercan TOP

Benzer bir sunumlar


... konulu sunumlar: "BÖTE 323: Internet Tabanlı Programlama Dr. Ercan TOP"— Sunum transkripti:

1 BÖTE 323: Internet Tabanlı Programlama Dr. Ercan TOP
PHP-Dosya ve Dizinler BÖTE 323: Internet Tabanlı Programlama Dr. Ercan TOP

2 Dosya Ayrıştırma Bir yoldaki (path) dosya adını alma
$yol = "/home/www/data/users.txt"; printf("Dosya Adı: %s <br />", basename($yol)); printf("Uzantı içermeyen dosya adı: %s <br />", basename($yol, ".txt")); Bir yoldaki (path) dosya dizini alma printf("Klasör yolu: %s", dirname($yol)); //Klasör yolu: /home/www/data

3 Dosya Ayrıştırma $yolBilgisi = pathinfo("/home/www/htdocs/book/chapter10/index.html"); printf("Dir name: %s <br />", $yolBilgisi['dirname']); printf("Base name: %s <br />", $yolBilgisi['basename']); printf("Extension: %s <br />", $yolBilgisi['extension']); Dosya Boyutu $dosya = "WinRAR_362_FULL_McyargiC.exe"; $bytes = filesize($dosya); $kilobytes = round($bytes/1024, 2); printf("%s dosyasi $bytes bytes, veya %.2f kilobytes veya %.2f megabytes.", basename($dosya), $kilobytes, round($kilobytes/1024, 2));

4 Dosya Ayrıştırma Kalan alan hesaplama
$dizin = "F:\Program Files\EasyPHP5.3.0\www\BilgisayarI"; printf("Hard diskte kullanmaya hazır alan= <b> %s</b>: %.2f MB", $dizin, round((disk_free_space($dizin) / ), 2)); Toplam ve Kullanılan Alanı Bulma $kisim = "F:\Program Files\EasyPHP5.3.0\www\BilgisayarI"; // toplam kisim alanını bulma $toplamAlan = disk_total_space($kisim) / ; // Kullanilan Alani Bulma $kullanilanAlan = $toplamAlan - disk_free_space($kisim) / ; printf("kisim: <b>%s </b>(Ayrılan: %.2f MB. Kullanilan: %.2f MB.)", $kisim, $toplamAlan, $kullanilanAlan);

5 function dizin_boyut($dizin)
{ $dizinboyut=0; // dizini aç ve içini oku if ($dh // her bir dizin içeriği için işleme devam et while (($dosyaAdi = readdir ($dh))) // bazı istenmeyen dizin içeriklerini filtrele if ($dosyaAdi != "." && $dosyaAdi != "..") // dosya ise boyutunu hesapla ve toplama ekle if (is_file($dizin."/".$dosyaAdi)) $dizinboyut += filesize($dizin."/".$dosyaAdi); // yeni dizin döngüyü tekrar çelıştır if (is_dir($dizin."/".$dosyaAdi)) $dizinboyut += dizin_boyut($dizin."/".$dosyaAdi); } @closedir($dh); return $dizinboyut; } #end dizin_boyut() $dizin = "C:\Program Files\EasyPHP5.3.0\www"; $toplamBoyut = round((dizin_boyut($dizin) / ), 2); printf("dizin %s: %f MB", $dizin,$toplamBoyut);

6 Ulaşım ve Değişim Bilgileri
En son erişilen zaman $dosya = "F:\Program Files\EasyPHP5.3.0\www\BilgisayarI/sifreler.txt"; printf("Dosyaya en son erişilen zaman: %s", date("m-d-y g:i:sa", fileatime($dosya))); En son (izinler, gruplar, erişim vb…)değiştirilen zaman (içerik değil) printf("Dosyada en son değişiklik yapılan zaman: %s", date("m-d-y g:i:sa",filectime($dosya)));

7 Ulaşım ve Değişim Bilgileri
Dosyanın içeriğinin en son değiştiği zaman $dosya = "F:\Program Files\EasyPHP5.3.0\www\BilgisayarI/sifreler.txt"; echo "Dosyanın içeriğinin en son değiştiği zaman ".date("m-d-y g:i:sa", filemtime($dosya));

8 Dosyalarla çalışmak Dosyada yeni satır karakterlerini tanıma
// dosyayi okuma amaçlı açmak $fh = fopen("F:\Program Files\EasyPHP5.3.0\www\BilgisayarI/sifreler.txt", "rt"); // dosyanin en sonuna ulaşmadan yeni satirlari almak while (!feof($fh)) echo "<br>".fgets($fh); // dosyayi kapatma fclose($fh);

9 Dosyalarla çalışmak Dosyaları değişik amaçlarla açma
fopen("F:\Program Files\EasyPHP5.3.0\www\BilgisayarI/sifreler.txt", "rt") r Sadece oku, gösterge en başa. r+ yaz ve oku. gösterge en başa. w Sadece yazma, yazmadan önce içeriği temizle, göstergeyi en başa getir, dosya yoksa önce açmayı dene. w+ yaz ve oku, yazmadan önce içeriği temizle, göstergeyi en başa getir, dosya yoksa önce açmayı dene. a sadece yaz, gösterge en sonda, dosya yoksa açmayı dene, append (ekle) olarak da bilinir. a+ oku ve yaz, gösterge en sonda, dosya yoksa açmayı dene, append (ekle) olarak da bilinir. b dosyayı binary modda açar. t dosyayı text formatında açar.

10 Dosyalarla çalışmak Dosyayı kapatma fclose($fh);
Dosyayı Bir Diziye Okuma // dosyayi dizeye ata $kullanicilar = file("sifreler.txt"); // dizinin içinde işlem yap foreach ($kullanicilar as $kullanici) { // satırları işle, Öğrenci no ve e-postalarını al list($ogrencino, $eposta) = explode(";", $kullanici); // $eposta'dan yeni satır karakterlerini kaldır $eposta = trim($eposta); // eposta adresi ve öğrenci numarasını istenilen biçimde düzenle echo "<a href=\"mailto:$eposta\">$ogrencino</a> <br /> "; }

11 Dosyalarla çalışmak Bütün Dosyayı Bir Stringe Atama
// diziyi bir string değişkenine ata $kullaniciDosyasi= file_get_contents("sifreler.txt"); // kullanici dosyasinin her bir satırını diziye ata $Kullanicilar = explode("\n",$kullaniciDosyasi); // Dizi içinde işlemler foreach ($Kullanicilar as $kullanici) { // satırlardan ogrenci no ve eposta adreslerini al list($ogrno, $eposta) = explode(";", $kullanici); // Output the formatted name and address echo "<a href=\"mailto:$eposta\">$ogrno</a> <br />"; }

12 Dosyalarla çalışmak csv veri dosyalarını okuma // veri sayfasını aç
$fh = fopen("notlar.csv", "r"); // her bir satırın ilk üç parçasını al while (list($ogrno, $adSoyad, $eposta) = fgetcsv($fh, 1024, ";")) { // html formatında ekrana yazdır printf("<p>%s (%s) E-posta= \"%s\"</p>", $adSoyad,$ogrno, $eposta); } csv dosyalarını diziye atama // veri sayfasını diziye aktar $fh = file("notlar.csv"); // her bir dizi elemanını işe foreach ($fh as $kullanici) { // Bher bir dizi elemanindan üç bilgi al list($ogrno, $adSoyad, $eposta) = explode(";", $kullanici); // veriyi html formatinda yazdir printf("<p>%s (%s); E-posta=\"%s\"</p>", $adSoyad, $ogrno, $eposta);

13 Dosyalarla çalışmak Bir dosyanın içeriğini başka dosyaya aktarma
// Dosyayi aç ve içerisindekileri oku $dizi = file("index.html"); //yeni dosya aç $fh = fopen("deneme.html", "wt"); foreach ($dizi as $satir) fwrite($fh, $satir); // dosyayi kapat fclose($fh); Dosyadaki Yeni Satırları Kaldırmak $dosya = "sifreler.txt"; // dosya'yı okumak için açar $fh = fopen($dosya, "rt"); // bütün dosyayi aktarir $kullaniciBilgileri = fread($fh, filesize($dosya)); // açılan dosyayi kapatir echo $kullaniciBilgileri;

14 Dosyalarla çalışmak Dosyadaki karakter sayısını bulmak
$dosya = "sifreler.txt"; // dosyanin boyu $bytes = readfile($dosya); echo $bytes; Veriyi istenilen biçimde okumak $fh = fopen("numaralar.txt", "r"); // her bir ayrımı belirle while ($kullanici = fscanf($fh, "%d %d %d %d %d")) { // her bir bölümü uygun değişkene ata list ($bolum1,$bolum2,$bolum3, $bolum4, $bolum5) = $kullanici; printf("Bölüm 1: %d Bölüm 2: %d Bölüm 3: %d Bölüm 4: %d Bölüm 5: %d<br />", $bolum1, $bolum2, $bolum3, $bolum4, $bolum5); } fclose($fh);

15 Dosyalarla çalışmak Yeni bilgi ekleme
// sifreler dosyasına eklemek istediğimiz bilgiler $kullaniciBilgileri = // sifreler.txt dosyasini ac imleci en sona götür $fh = fopen("sifreler.txt", "at"); // veriyi yaz fwrite($fh, $kullaniciBilgileri); // dosyayı kapat fclose($fh); Yeni satıra eklemesini istersek ?? Yeni bilgi ekleme // sifreler dosyasına eklemek istediğimiz bilgiler $kullaniciBilgileri = // sifreler.txt dosyasini ac imleci en sona götür $fh = fopen("sifreler.txt", "at"); // veriyi yaz fwrite($fh, $kullaniciBilgileri); // dosyayı kapat fclose($fh); Yeni satıra eklemesini istersek ??

16 İmlecin Yerini Belirlemek
int fseek(Dosya Tutucu, int sayi [, int whence]) whence değerleri SEEK_CUR: şu andaki pozisyonundan sayi kadar ileri SEEK_END: sayi – olmak durumunda. En sonuna kadar gidip o kadar karakter geri alıyor. SEEK_SET: sayi kadar ileri alıyor. Whence yazmasak da ayni işlemi yapıyor. int ftell(dosya tutucu): imlecin nerede olduğunu belirtiyor. int rewind(dosya tutucu): imleci en başa götürüyor

17 Dosya İçeriklerini Okumak
resource opendir(string path) void closedir(resource directory_handle) string readdir(int directory_handle) $dh = opendir('F:\Program Files\EasyPHP5.3.0\www\BilgisayarI/'); while ($dosya = readdir($dh)) echo "$dosya <br />"; closedir($dh); $dh = opendir('F:\Program Files\EasyPHP5.3.0\www\BilgisayarI'); if(($dosya != ".") AND ($dosya != "..")) echo "$dosya <br />"; Diziye atama $dosyalar= scandir("F:\Program Files\EasyPHP5.3.0\www\BilgisayarI"); foreach ($dosyalar as $dosya) echo "<br>".$dosya;

18 Dizin Silmek function dizin_Sil($dir) { if ($dh = opendir($dir))
// dizin içerikleriyle çalışma while (($dosya = readdir ($dh)) != false) if (($dosya == ".") || ($dosya == "..")) continue; if (is_dir($dir . '/' . $dosya)) dizin_Sil($dir . '/' . $dosya); else unlink($dir . '/' . $dosya); } closedir($dh); rmdir($dir); $dir = "F:\Program Files\EasyPHP5.3.0\www\BilgisayarI/deneme"; dizin_Sil($dir); Dosya Yeniden Adlandırma rename("deneme.html", "deneme2.html");


"BÖTE 323: Internet Tabanlı Programlama Dr. Ercan TOP" indir ppt

Benzer bir sunumlar


Google Reklamları