Membaca Isi File Dengan PHP
Setelah belajar bagaimana menuliskan data pada file, Anda akan belajar untuk membaca isi dari file yang sudah Anda buat sebelumnya.
Untuk membaca isi file dengan php, perintah yang digunakan adalah fgets. Kemudian dengan beberapa perintah lain yaitu fopen untuk membuka file dan feof untuk mendeteksi baris data yang terdapat dalam file. Karena fgets hanya mampu membaca 1 baris saja, maka kita perlu mengkombinasikannya dengan perulangan while dan perintah feof.
Berikut ini adalah contoh source code untuk membaca isi file dengan php
<?php
$file = "file_test2.txt"; //nama file yang akan dibaca
if($buka=fopen($file, "r")) //fopen dengan mode r
{
while (!feof($buka)) {
$isi=fgets($buka);
echo ltrim($isi)."<br>";
}
fclose($buka);
}
?>
Contoh kedua kita akan membaca isi file menggunakan sebuah form
<?php
$pesan_error = array();
$berhasil="";
if(isset($_POST['tampilkan_file']))
{
if(empty($_POST['path_tujuan']))
{
//jika direktori tujuan kosong, maka gunakan default direktori aktif
$path = getcwd();
}
else
{
//tetapi jika ada path tujuan dimana direktori baru akan diletakan maka
//rubah path direktorinya
$path = $_POST['path_tujuan'];
chdir($path);
}
}
if(isset($_POST['buka_file']))
{
$buka = $_POST['file'];
$path_tujuan = $_POST['path_tujuan'];
chdir($path_tujuan);
}
if(isset($_POST['edit_file']))
{
if(empty($_POST['file']) && empty($_POST['file_baru']))
{
array_push($pesan_error, "Harap pilih atau masukan nama file baru");
}
else
{
//jika nama file lama yang dirubah sama dengan nama file barunya
if($_POST['file']==$_POST['file_baru'])
{
$file_baru=$_POST['file_baru'];
}
else
{
//tetapi jika tidak sama, maka cek apakah nama file baru tersebut sudah ada sebelumnya
if(file_exists($_POST['file_baru']))
{
//jika ada tampilan error
array_push($pesan_error, "Nama file tersebut sudah ada sebelumnya");
}
else
{
//cek dulu apakah ini direktori atau file
if(is_dir($_POST['file']))
{
//jika file lama itu adalah direktori maka simpan seperti apa adanya
//tanpa menambahkan ektensi apapun
$file_baru=$_POST['file_baru'];
}
else
{
//tetapi jika bukan direktori
//maka cek ektensi filenya
$file_baru=$_POST['file_baru'];
//mengecek apakan nama file memiliki ektensi
$jenis_file=explode(".", $file_baru);
//jika tidak memiliki ektensi maka buat default ektensinya sebagai .txt
if(sizeof($jenis_file)==1)
{
//sebelum diberi ektensi default maka cek apakah itu file atau direktori
$file_baru=$_POST['file_baru'].".txt";
}
}
}
}
}
if(count($pesan_error)==0)
{
if(rename($_POST['file'], $file_baru))
{
$berhasil = "File - ".$_POST['file']." berhasil dirubah menjadi $file_baru <br/>";
}
else
{
$berhasil = "Gagal merename file <br/>";
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Operasi Pengelolaan File Sistem</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div class="container" align="center">
<?php
if(count($pesan_error)>0)
{
foreach ($pesan_error as $error) {
echo $error;
}
}
?>
<?=$berhasil?>
<div class="container" align="center">
<table class="items" width="60%" cellpadding="8" border="1">
<thead>
<th><h3>Membaca File Dengan PHP - ROOT93</h3></th>
</thead>
<tr>
<td align="center">
<form action="<?=$_SERVER['PHP_SELF']?>" method="post">
<table class="items2" cellpadding="5" border="1">
<tr>
<td>Path</td>
<td>
<input type="text" size="35" name="path_tujuan" placeholder="Masukan penempatan direktori yang dituju" value="<?=getcwd()?>" />
</td>
<td>
<input type="submit" name="tampilkan_file" value="Pilih Direktori" />
</td>
</tr>
</table>
</form>
</td>
</tr>
<tr>
<td align="center">
<form action="<?=$_SERVER['PHP_SELF']?>" method="post">
<table class="items2" cellpadding="5" border="1">
<td>
<label>Pilih File</label>
<select name="file">
<?php
$i=1;
$path = getcwd();
if($buka_dir=opendir($path))
{
while (($file=readdir($buka_dir))!==false) {
if(ereg("txt", $file))
{
echo "<option value=\"$file\">$file</option>";
}
$i+=1;
}
closedir($buka_dir);
}
?>
</select>
<input type="hidden" name="path_tujuan" value="<?=getcwd()?>">
<input type="submit" name="buka_file" id="buka" value="Buka File" />
</td>
</table>
</form>
</td>
</tr>
<tr>
<?php
if(isset($buka))
{
?>
<td align="center">
<form action="<?=$_SERVER['PHP_SELF']?>" method="post">
<table class="items2" cellpadding="5" border="1">
<td valign="top" align="center">
<?php
chdir($path_tujuan);
$path = getcwd();
$isi = "";
if($buka_file=fopen($buka, "r"))
{
while(!feof($buka_file)){
$isi.=fgets($buka_file);
}
fclose($buka_file);
}
?>
<p><?=$isi?></p>
</td>
</table>
</form>
</td>
<?php }?>
</tr>
</table>
</div>
</table>
</div>
</body>
</html>
Output Membaca Isi File Dengan PHP |
0 Response to "Membaca Isi File Dengan PHP"
Post a Comment
Komentar yang Anda kirim akan terlebih dahulu di moderasi oleh Admin