Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

PHP-Dosya ve Dizinler Internet Tabanlı Programlama Dr. Erman Yukselturk.

Benzer bir sunumlar


... konulu sunumlar: "PHP-Dosya ve Dizinler Internet Tabanlı Programlama Dr. Erman Yukselturk."— Sunum transkripti:

1 PHP-Dosya ve Dizinler Internet Tabanlı Programlama Dr. Erman Yukselturk

2 Dosya Ayrıştırma Bir yoldaki (path) dosya adını alma $yol = "/home/www/data/users.txt"; printf("Dosya Adı: %s ", 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

3 Dosya Ayrıştırma $yolBilgisi = pathinfo("/home/www/htdocs/book/chapter10/index.html"); printf("Dir name: %s ", $yolBilgisi['dirname']); printf("Base name: %s ", $yolBilgisi['basename']); printf("Extension: %s ", $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= %s : %.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: %s (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); 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) $dosya = "F:\Program Files\EasyPHP5.3.0\www\BilgisayarI/sifreler.txt"; 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/si freler.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 " ".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 " $ogrencino "; }

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 " $ogrno "; }

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(" %s (%s) E-posta= \"%s\" ", $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(" %s (%s); E-posta=\"%s\" ", $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 fclose($fh); 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 ", $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 "; closedir($dh); $dh = opendir('F:\Program Files\EasyPHP5.3.0\www\BilgisayarI'); while ($dosya = readdir($dh)) if(($dosya != ".") AND ($dosya != "..")) echo "$dosya "; closedir($dh); Diziye atama $dosyalar= scandir("F:\Program Files\EasyPHP5.3.0\www\BilgisayarI"); foreach ($dosyalar as $dosya) echo " ".$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");


"PHP-Dosya ve Dizinler Internet Tabanlı Programlama Dr. Erman Yukselturk." indir ppt

Benzer bir sunumlar


Google Reklamları