Adlinux - Beberapa fungsi dalam pemrograman PHP terkadang harus dibuat sendiri untuk kebutuhan tertentu seperti menghapus, upload, merubah ukuran file dan lai-lain. Fungsi-fungsi yang dibuat sendiri ini disebut dengan UDF (user-defined-functions).
Berikut ini akan kita ulas 3 php custom function yang merupakan fungsi dasar PHP (user defined funtions) yang berkaitan dengan operasional File yang wajib anda ketahui jika membangun sebuah proyek PHP:
Dalam fungsi yang akan dibuat disini, dibutuhkan 2 parameter: path ke lokasi file (harus diakhiri dengan garis miring "/") dan nama file (file yang akan dihapus).
Fungsi ini diatur untuk menghasilkan 2 output, yaitu, "TRUE" atau "FALSE". TRUE apabila file berhasil dihapus dari webserver dan FALSE apabila sebaliknya.
Dalam praktik berikut system bekerja dengan menampilkan daftar file dalam format asli misalnya, pdf, docs, jpg dan lain-lain. User dapat memilih beberapa file yang diinginkan kemudian mendownloadnya dalam bentuk file format ZIP.
Demikian 3 php custom function untuk operasional file pada PHP. Fungsi-fungsi ini sangat berguna karena hampir setiap proyek web umumnya membutuhkan upload, download dan menghapus file-file tertentu selama berjalannya system.
Lihat juga Non aktifkan Upload File pad LAMP di Linux
Berikut ini akan kita ulas 3 php custom function yang merupakan fungsi dasar PHP (user defined funtions) yang berkaitan dengan operasional File yang wajib anda ketahui jika membangun sebuah proyek PHP:
1. Fungsi Menghapus File dengan PHP
Fungsi ini berguna untuk menghapus file pada webserver tanpa menggunakan klien ftp. Fungsi ini sangat sederhana jadi selalu pastikan bahwa Anda menghapus file yang tepat. Perintah yang digunakan adalah perintah "unlink", (fungsi dasar PHP untuk menghapus file).Dalam fungsi yang akan dibuat disini, dibutuhkan 2 parameter: path ke lokasi file (harus diakhiri dengan garis miring "/") dan nama file (file yang akan dihapus).
Fungsi ini diatur untuk menghasilkan 2 output, yaitu, "TRUE" atau "FALSE". TRUE apabila file berhasil dihapus dari webserver dan FALSE apabila sebaliknya.
function fileDelete($filepath,$filename) {
$success = FALSE;
if (file_exists($filepath.$filename)&&$filename!=""&&$filename!="n/a") {
unlink ($filepath.$filename);
$success = TRUE;
}
return $success;
}
2. Membuat ZIP File dengan PHP
Beberapa baris script berikut berfungsi untuk merubah file dalam format tertentu menjadi format ZIP. Fungsi ini sangat berguna misalnya jika Anda ingin membangun sebuah proyek web ecommerce berbasis PHP. Misalnya untuk penjualan e-book dalam format PDF, gambar, DOCS dan lain-lain.Dalam praktik berikut system bekerja dengan menampilkan daftar file dalam format asli misalnya, pdf, docs, jpg dan lain-lain. User dapat memilih beberapa file yang diinginkan kemudian mendownloadnya dalam bentuk file format ZIP.
![]() |
| Daftar File untuk di Download |
Script HTML
Script HTML berikut akan menampilkan daftar file dalam beberapa format berbeda kepada user yang dapat memilih untuk kemudian mendownload<form name="zips" method="post"> <input type="checkbox" name="files[]" value="flowers.jpg" /> <img src="files/image.png" /> flowers.jpg <input type="checkbox" name="files[]" value="fun.jpg" /> <img src="files/image.png" /> fun.jpg <input type="checkbox" name="files[]" value="9lessons.docx" /> <img src="files/doc.png" /> 9lessons.docx ........ <input type="submit" name="createpdf" value="Download as ZIP" /> <input type="reset" name="reset" value="Reset" /> </form>
Script PHP
Scipt PHP berikut untuk merubah format file tertentu yang dipilih menjadi file berekstensi ZIP<?php
$error = ""; //error holder
if(isset($_POST['createpdf']))
{
$post = $_POST;
$file_folder = "files/"; // folder to load files
if(extension_loaded('zip'))
{
// Checking ZIP extension is available
if(isset($post['files']) and count($post['files']) > 0)
{
// Checking files are selected
$zip = new ZipArchive(); // Load zip library
$zip_name = time().".zip"; // Zip name
if($zip->open($zip_name, ZIPARCHIVE::CREATE)!==TRUE)
{
// Opening zip file to load files
$error .= "* Sorry ZIP creation failed at this time";
}
foreach($post['files'] as $file)
{
$zip->addFile($file_folder.$file); // Adding files into zip
}
$zip->close();
if(file_exists($zip_name))
{
// push to download the zip
header('Content-type: application/zip');
header('Content-Disposition: attachment; filename="'.$zip_name.'"');
readfile($zip_name);
// remove zip file is exists in temp path
unlink($zip_name);
}
}
else
$error .= "* Please select file to zip ";
}
else
$error .= "* You dont have ZIP extension";
}
?>
3. Upload dan Merubah Ukuran File Gambar dengan PHP
Anda mencari script PHP untuk upload file? Berikut merupakan script PHP sederhana yang berfungsi untuk mengupload file-file gambar ke server. System bekerja dengan menerima upload lalu merubah dimensi file ke dalam dimensi yang lebih kecil. Fungsi ini sangat berguna untuk menghemat space hosting dan bandwidth.Script PHP
Script PHP berikut akan merubah dimensi gambar menjadi 60px x 25px perhatikan kode$newwidth yang akan merubah ukuran file.<?php
define ("MAX_SIZE","400");
$errors=0;
if($_SERVER["REQUEST_METHOD"] == "POST")
{
$image =$_FILES["file"]["name"];
$uploadedfile = $_FILES['file']['tmp_name'];
if ($image)
{
$filename = stripslashes($_FILES['file']['name']);
$extension = getExtension($filename);
$extension = strtolower($extension);
if (($extension != "jpg") && ($extension != "jpeg")
&& ($extension != "png") && ($extension != "gif"))
{
echo ' Unknown Image extension ';
$errors=1;
}
else
{
$size=filesize($_FILES['file']['tmp_name']);
if ($size > MAX_SIZE*1024)
{
echo "You have exceeded the size limit";
$errors=1;
}
if($extension=="jpg" || $extension=="jpeg" )
{
$uploadedfile = $_FILES['file']['tmp_name'];
$src = imagecreatefromjpeg($uploadedfile);
}
else if($extension=="png")
{
$uploadedfile = $_FILES['file']['tmp_name'];
$src = imagecreatefrompng($uploadedfile);
}
else
{
$src = imagecreatefromgif($uploadedfile);
}
list($width,$height)=getimagesize($uploadedfile);
$newwidth=60;
$newheight=($height/$width)*$newwidth;
$tmp=imagecreatetruecolor($newwidth,$newheight);
$newwidth1=25;
$newheight1=($height/$width)*$newwidth1;
$tmp1=imagecreatetruecolor($newwidth1,$newheight1);
imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$newheight,
$width,$height);
imagecopyresampled($tmp1,$src,0,0,0,0,$newwidth1,$newheight1,
$width,$height);
$filename = "images/". $_FILES['file']['name'];
$filename1 = "images/small". $_FILES['file']['name'];
imagejpeg($tmp,$filename,100);
imagejpeg($tmp1,$filename1,100);
imagedestroy($src);
imagedestroy($tmp);
imagedestroy($tmp1);
}
}
}
//If no errors registred, print the success message
if(isset($_POST['Submit']) && !$errors)
{
// mysql_query("update SQL statement ");
echo "Image Uploaded Successfully!";
}
?>
Fungsi PHP untuk Extensi File
Fungsi untuk menemukan ekstensi filefunction getExtension($str) {
$i = strrpos($str,".");
if (!$i) { return ""; }
$l = strlen($str) - $i;
$ext = substr($str,$i+1,$l);
return $ext;
}
Demikian 3 php custom function untuk operasional file pada PHP. Fungsi-fungsi ini sangat berguna karena hampir setiap proyek web umumnya membutuhkan upload, download dan menghapus file-file tertentu selama berjalannya system.
Lihat juga Non aktifkan Upload File pad LAMP di Linux

