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>



membaca isi file dengan php
Output Membaca Isi File Dengan PHP


Baca juga : Mengedit 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