Menyertakan File Eksternal di PHP

Ada banyak alasan kenapa Anda harus menyertakan file eksternal ke dalam satu dokumen PHP. Kali ini kita akan membahasnya.

Include dan Require

PHP membolehkan Anda menggunakan SSI untuk menyertakan file eksternal ke dalam file yang dieksekusi. Dua perintah untuk melakukan ini adalah include() dan require().

Perbedaan keduanya adalah ketika ditempatkan bersama dengan pernyataan kondisional, jika pernyataanya false, INCLUDE tidak akan dipanggil, sedangakan REQUIRE tetap akan dipanggil hanya saja diabaikan. Sehingga penggunaan INCLUDE akan lebih cepat dalam pernyataan kondisional.

Format perintah include dan require ditulis seperti berikut:

INCLUDE ‘http://situsanda.com/folder1/folder2/file.php’ ;

//atau

REQUIRE ‘http://situsanda.com/folder1/folder2/file.php’ ;

Penggunaan paling umum dari perintah ini adalah untuk menyertakan atau memanggil variabel yang berulang-ulang digunakan di banyak dokumen, seperti header dan footer.

Jika tata letak situs keseluruhan ditaruh pada file eksternal dan dipanggil menggunakan SSI, maka setiap perubahan pada desain website hanya perlu dilakukan pada satu dua buah file saja, lalu semua halaman akan mengikuti perubahan tersebut.

Memanggil file eksternal

Pertama, mari kita buat file guna menyimpan variabel. Sebut saja dengan variabel.php.

<?php
//variabel.php
$nama = ‘GeeJhon’;
$umur = ’37’;
?>

Nah, itulah isi dari file variabel kita. Sekarang kita akan menyertakan file tersebut ke dalam file kedua kita, yaitu laporan.php.

<?php
//laporan.php
include ‘variabel.php’;
/* atau Anda bisa menggunakan alamat lengkap;
include ‘http://situsanda.com/folder1/folder2/variabel.php’; */
print “Nama saya ” . $nama . ” dan umur saya ” . $umur . ” tahun.”;
?>

Seperti Anda lihat, perintah print begitu saja langsung menggunakan variabel $nama dan $umur yang dipanggil dari file variabel.php.

Selain itu, Anda juga bisa menggunakan INCLUDE dalam sebuah function (fungsi), namun kita harus mendeklarasikan variabel tersebut menjadi GLOBAL jika ingin menggunakannya di luar function.

<?php
function cetaknama ()
{
global $nama;
include ‘variabel.php’;
print “Nama saya ” . $nama . ” dan umur saya ” . $umur . ” tahun.”;
}

cetaknama ();
print “<br>”;

//Baris perintah berikut bekerja karena $nama adalah GLOBAL

print “Nama saya adalah ” . $nama;
print “<br>”;

//Baris yang ini TIDAK akan bekerja karena variabel $umur TIDAK dideklarasikan
sebagai global

print “Saya berumur ” . $umur . ” tahun.”;
?>

lanjutan tentang SSI

Perintah yang sama dapat digunakan untuk memanggil file non-PHP, seperti file .txt atau .html.

Pertama, mari kita buat file variabel.txt dan kita lihat apa yang terjadi ketika dipanggil dengan SSI.

<?php
//variabel.txt
$nama = ‘GeeJhon’; $umur = ’37’;
?>
<?php
//laporan.php
include ‘variabel.txt’;
// atau Anda bisa menggunakan alamat lengkap;
include ‘http://situsanda.com/folder1/folder2/variabel.txt’;
print “Nama saya ” . $nama . ” dan umur saya ” . $umur . ” tahun.”;
?>

Ya, ini bekerja dengan baik. Karena pada dasarnya server menimpa baris kode:

include include ‘variabel.txt’

dengan kode yang adalah file variabel.txt. Sehingga yang sebenarnya dijalankan oleh server adalah:

<?php
//laporan.php
//variabel.txt
$nama = ‘GeeJhon’;
$umur = ’37’;
print “Nama saya ” . $nama . ” dan umur saya ” . $umur . ” tahun.”;
?>

Nah, jadi yang terpenting untuk diingat adalah, meski Anda menyertakan file non-PHP, jika Anda ingin memanggilnya sebagai PHP, maka Anda harus menambahkan tag <?php ?> di file tersebut, atau tidak akan dieksekusi sebagai PHP.

Pada contoh di atas, yaitu file variabel.txt kita menambahkan tag <?php ?>. Sekarang cobalah buang tag tersebut, sehingga hanya berisi:

//variabel.txt
$nama = ‘GeeJhon’; $umur = ’37’;

Kemudian jalankan lagi file laporan.php. Maka tidak akan berjalan dengan benar.

Kesimpulannya, meskipun Anda bisa menggunakan file non-php (.txt misalnya), tapi karena Anda tetap harus menyertakan tag <?php ?>, juga karena file .txt dapat dilihat melalui browser (file PHP tidak), maka sebaiknya Anda tetap menggunakan file PHP, alih-alih non-PHP atau .txt.

TINGGALKAN KOMENTAR

Please enter your comment!
Please enter your name here