Menampilkan Isi Direktori Dengan PHP

PHP mendukung operasi direktori seperti salah satunya adalah menampilkan daftar direktori/file dari sebuah direktori aktif. Dalam kesempatan ini saya akan memberikan sebuah contoh sederhana bagaimana menampilkan sebuah daftar file/direktori dari sebuah direktori aktif menggunakan script PHP. Daftar direktori nantinya akan disimpan didalam variabel array lalu ditampilkan.

Baca juga :

Menampilkan Isi Direktori Dengan PHP

  1. Buatlah sebuah  fungsi dengan nama function.php. Fungsi tersebut nantinya digunakan untuk menampilkan daftar direktori /file yang terdapat pada sebuah direktori aktif seperti berikut
    
    <?php 
    
    
    function tampil_isi_dir($path)
    {
    	$hasil = array();
    
    	if(!is_dir($path))
    	{
    		$hasil[0]="Direktori aktif : <br> ".$path;
    		$hasil[1]="Alamat direktori salah";
    		return $hasil;
    		exit;
    	}
    	
    
    	$i=1;
    	$hasil[0]="Direktri aktif : ".realpath($path);
    	
    	if($buka_dir=opendir($path))
    	{
    		
    		while (($file=readdir($buka_dir))!==false) {
    			
    			$hasil[$i]=$file; 
    			$i+=1;
    		}
    	}
    	return $hasil;
    }
    
  2. Selanjutnya untuk mengujinya Anda bisa membuat file dengan nama index.php seperti berikut
    
      <?php 
    
    include('function.php');
    
    if(isset($_POST['cek']))
    {
    	if(empty($_POST['path']))
    	{
    		echo "Path harus diisi";
    	}
    	else
    	{
    		$path = $_POST['path'];
    	}
    	
    }
    
    
    
    ?>
    <!DOCTYPE html>
    <html>
    <head>
    	<title>Operasi Direktori</title>
    	<style type="text/css">
    		table.items {
    		  font-size: 12pt; 
    		  border-collapse: collapse;
    		  border: 3px solid #880000; 
    		}
    		td { vertical-align: top; 
    		}
    		table thead th { background-color: #EEEEEE;
    		  text-align: center;
    		}
    		table tfoot td { background-color: #AAFFEE;
    		  text-align: center;
    		}
    		.container{ margin: 15px; }
    		
    	</style>
    </head>
    <body>
    <div class="container" align="center">
    	<form action="<?=$_SERVER['PHP_SELF']?>" method="post">	
    		<table class="items" width="50%" cellpadding="8" border="1">
    			<thead>
    				<th colspan="3"><h3>Operasi Direktori - ROOT93</h3></th>
    			</thead>
    			<tr>
    				<td><input type="text" name="path" placeholder="C:\\xamp\htdocs"  /></td>
    				
    				<td><input type="submit" name="cek" value="Cek direktori" /></td>
    			</tr>
    		</table>
    	</form>
    	</table>
    	<table class="items" width="50%" cellpadding="8" border="1">
    		<thead>
    
    			<tr>
    				<th colspan="6"><h3>Menampilkan dan membaca isi direktori dengan PHP - root93.co.id</h3></th>
    			</tr>
    
    		</thead>
    		<tbody>
    			<tr>
    				<th>No.</th>
    				<th>Isi Direktori</th>
    				
    				
    				
    			</tr>
    			<?php 
    
    				if(!empty($path))
    				{
    					$arr_dir = tampil_isi_dir($path);
    					$i=0;
    					foreach ($arr_dir as $isi) {
    						if($i<=2)
    						{
    							echo '
    
    							<tr>
    								<td colspan="2">'.$isi.'</td>
    								
    							</tr>
    							';
    							$i+=1;
    						}
    						else
    						{
    							echo
    							"<tr>
    								<td>$i</td>
    								<td>$isi</td>
    
    								
    							</tr>";
    							$i+=1;
    						}
    					}
    				}
    				else
    				{
    					echo '<tr><td colspan="2">Kosong</td></tr>';
    				}
    				
    			?>
    			
    
    		</tbody>
    		
    	</table>
    	
    </div>
    </body>
    </html>
    
    
      

Menampilkan Isi Direktori Dengan PHP
Output
Penjelasan kode 

  • is_dir = untuk mengecek apakah path adalah sebuah direktori dalam suatu direktori aktif
  • opendir = fungsi untuk membuak direktori
  • readdir= digunakan untuk membaca isi suatu direktori
  • realpath= digunakan untuk mendapatkan pat/alamat direktori secara lengkap.


# jika direktori $path tidak ditemukan, maka muncul pesan Alamat direktori salah
	# kemudian akhiri fungsi
	if(!is_dir($path))
	{
		$hasil[0]="Direktori aktif : <br> ".$path;
		$hasil[1]="Alamat direktori salah";
		return $hasil;
		exit;
        }

Potongan kode diatas adalah untuk mengecek jika direktori pada $path tidak ditemukan maka array akan mengembalikan alamat direktori salah lalu mengakhiri fungsi.

$i=1;
	$hasil[0]="Direktri aktif : ".realpath($path);
	# buka direktori dengan fungsi opendir
	if($buka_dir=opendir($path))
	{
		# lalu gunakan readdir, jika nilainya tidak false
		# maka lakukan perulangan
		while (($file=readdir($buka_dir))!==false) {
			
			$hasil[$i]=$file; # simpan list direktor/file didalam array $hasil
			$i+=1;
		}
	}

tetapi jika direktori ditemukan maka buka direktori dengan fungsi opendir, kemudian lakukan perulangan while dengan tambahan fungsi readdir untuk membaca nilai pada variabel $buka_dir yang bertuga membuak direktori


0 Response to " Menampilkan Isi Direktori Dengan PHP"

Post a Comment

Komentar yang Anda kirim akan terlebih dahulu di moderasi oleh Admin