Penangan Berkas

advertisement
Penangan Berkas PHP Pemrograman Web -­‐ Penanganan Berkas Agi Putra Kharisma, ST., MT. 1 Pemanfaatan Penanganan Berkas •  Sebagai media penyimpanan •  Memanipulasi berkas yang diunggah oleh klien •  Membuat berkas yang dapat diunduh oleh klien •  Dsb … Pemrograman Web -­‐ Penanganan Berkas Agi Putra Kharisma, ST., MT. 2 Membuka/Menutup Berkas Dengan PHP •  Berkas dapat dibuka dengan fungsi fopen() sebagai sebuah “stream”, kemudian PHP membuat suatu “handle” terhadap berkas tersebut yang dapat digunakan sebagai referensi bagi fungsi lain yang mengakses berkas tersebut. •  Berkas dapat dibuka dalam beberapa mode sesuai kebutuhan (lihat slide selanjutnya). •  Berkas yang sedang dibuka dapat ditutup dengan fungsi fclose() atau berkas tersebut akan otomaHs ditutup keHka skrip program telah berakhir. Pemrograman Web -­‐ Penanganan Berkas Agi Putra Kharisma, ST., MT. 3 Mode Membuka Berkas Pada PHP ‘r’
Mode baca saja. Dimulai dari bagian awal berkas. ‘r+’
Sama dengan a, tetapi dalam mode baca dan tulis. ‘w’
Mode tulis saja. Menghapus seluruh konten yang ada sebelumnya, kemudian diganH dengan konten baru. Jika belum ada berkas sebelumnya, maka akan dibuat berkas baru. ‘w+’
Sama dengan w, tetapi dalam mode baca dan tulis. ‘a’
Mode tulis saja, tetapi dimulai dari bagian akhir berkas, konten lama tetap ada. ‘a+’
Sama dengan a, tetapi dalam mode baca dan tulis. ‘x’
Mode tulis saja. Membuat berkas baru, akan melempar kesalahan bila berkas telah ada sebelumnya. ‘x+’
Sama dengan x, tetapi dalam mode baca dan tulis. Pemrograman Web -­‐ Penanganan Berkas Agi Putra Kharisma, ST., MT. 4 Contoh PHP: Membuka – Menutup Berkas <?php // open file to read $toread = fopen(‘some/file.ext’,’r’); // open (possibly new) file to write $towrite = fopen(‘some/file.ext’,’w’); // close both files fclose($toread); fclose($towrite); ?> Pemrograman Web -­‐ Penanganan Berkas Agi Putra Kharisma, ST., MT. 5 Membaca Data Ada 2 fungsi utama untuk membaca data, yaitu: •  fgets($handle, $bytes) –  Membaca hingga $bytes data, berhenH keHka baris baru (newline) atau akhir file (end of file – EOF). •  fread($handle, $bytes) –  Membaca hingga $bytes data, berhenH keHka EOF. Pemrograman Web -­‐ Penanganan Berkas Agi Putra Kharisma, ST., MT. 6 Contoh PHP: Membaca Data <?php $handle = fopen('people.txt', 'r'); while (!feof($handle)) { echo fgets($handle, 1024); echo '<br />'; } fclose($handle); ?> Pemrograman Web -­‐ Penanganan Berkas Agi Putra Kharisma, ST., MT. 7 Jalan Pintas Baca Tanpa Membuka Berkas $baris = file($nama_berkas) –  Membaca berkas secara keseluruhan, kemudian menyimpan isi berkas tersebut menjadi suatu Array, dimana masing – masing baris menjadi elemen Array. $string = file_get_contents($nama_berkas) –  Membaca berkas secara keseluruhan, kemudian menyimpan berkas tersebut menjadi sebuah string. Pemrograman Web -­‐ Penanganan Berkas Agi Putra Kharisma, ST., MT. 8 Menulis dan Menyimpan Berkas fwrite($handle,$data) –  Menulis $data ke dalam berkas sesuai referensi pada $handle. Contoh: <?php $handle = fopen('people.txt', 'a'); fwrite($handle, “\nFred:Male”); fclose($handle); ?> Pemrograman Web -­‐ Penanganan Berkas Agi Putra Kharisma, ST., MT. 9 Penanganan Berkas Lainnya •  Menghapus berkas unlink('nama_berkas'); •  Mengubah nama (berkas atau direktori) rename('nama lama', 'nama baru'); •  Menyalin berkas Copy('asal', 'tujuan'); •  Dan masih banyak fungsi – fungsi lainnya! –  www.php.net/manual/en/ref.filesystem.php Pemrograman Web -­‐ Penanganan Berkas Agi Putra Kharisma, ST., MT. 10 Penanganan Direktori •  Membuka sebuah direktori $handle = opendir('nama direktori'); •  $handle ’menunjuk' pada suatu direktori •  Membaca da[ar isi suatu direktori readdir($handle) •  Menghasilkan da[ar nama berkas di dalam suatu direktori •  Berkas diurutkan sesuai sistem berkas (filesystem) •  Menutup direktori yang sedang dibuka closedir($handle) •  Menutup direktori yang sedang dibuka Pemrograman Web -­‐ Penanganan Berkas Agi Putra Kharisma, ST., MT. 11 Contoh PHP: Penanganan Direktori <?php $handle = opendir('./'); while(false !== ($file=readdir($handle))) { echo "$file<br>"; } closedir($handle); ?> Pemrograman Web -­‐ Penanganan Berkas Agi Putra Kharisma, ST., MT. 12 Operasi Direktori Lainnya •  Mendapat direktori yang sedang diakses saat ini getcwd() •  Berpindah direktori chdir('dirname'); •  Membuat direktori baru mkdir('dirname'); •  Menghapus direktori KOSONG rmdir('dirname'); •  Dan lain sebagainya! –  www.php.net/manual/en/ref.dir.php Pemrograman Web -­‐ Penanganan Berkas Agi Putra Kharisma, ST., MT. 13 Mengunggah Berkas •  Berkas diunggah melalui formulir dengan encoding: mulHpart/form-­‐data •  File diletakkan pada <input type=‘file’ … •  File yang diunggah pada server diletakkan pada suatu array asosiaHf bernama $_FILES Pemrograman Web -­‐ Penanganan Berkas Agi Putra Kharisma, ST., MT. 14 Ringkasan Penanganan berkas dengan PHP •  Dapat membuka dan menutup berkas. •  Dapat membaca berkas baris-­‐per-­‐baris maupun sekaligus secara keseluruhan. •  Dapat menulis ke dalam berkas. •  Dapat membuka berkas dan berpindah ke berkas lain pada suatu direktori. •  Dsb… (baca referensi PHP). Pemrograman Web -­‐ Penanganan Berkas Agi Putra Kharisma, ST., MT. 15 
Download