Judul PHP – Phppot

oleh Vincy. Terakhir diubah pada 11 Agustus 2021.

Fungsi header PHP adalah mengirim header HTTP mentah ke klien. Header mentah berisi permintaan dan metadata lainnya. Ini membantu untuk mengatur tipe konten, caching, lokasi dan data serupa.

Header HTTP adalah untuk meneruskan detail tambahan dengan permintaan HTTP. Ini berisi detail dalam bentuk kunci: nilai berpasangan.

Contoh Cepat

Untuk mengalihkan ke URL:


<?php
header("Location: https://phppot.com");
exit;
?>

Untuk mengalihkan setelah X detik:


<?php
  header( "refresh:5;url=target.php" );
  echo 'You will be redirected in 5 secs. If not, click here.';
?>

Header() adalah fungsi PHP bawaan yang ada bahkan di versi sebelumnya. Tetapi pada 5.1.2, ia berhenti mengirim lebih dari satu header sekaligus untuk menghindari serangan injeksi header.

Header PHP harus dipanggil sebelum mengirim output apa pun ke browser. Jika tidak, itu akan menyebabkan “Cannot modify header information ... header already sent ...” kesalahan.

Ini adalah item yang tidak diperbolehkan sebelum memanggil header PHP.

  1. tag HTML.
  2. Garis kosong.
  3. PHP mencetak pernyataan.
  4. PHP membutuhkan/termasuk yang menampilkan sesuatu ke browser.

meminta tajuk tanggapan

Sintaks dan parameter header PHP

Fungsi header PHP memiliki tiga parameter. Ini menggunakan sintaks berikut yang menunjukkan tiga parameter fungsi ini. Fungsi ini mengembalikan (void) tanpa nilai.


header(String $header, bool $replace=true, int $response_code=0);

$tajuk

Ini berisi string yang mendefinisikan kode status HTTP. Ini mendefinisikan properti header seperti Jenis konten, lokasi dan banyak lagi.

header lokasi mengarahkan pengguna ke URI target dan mengembalikan kode status 302 ke klien.

$ganti

Ini untuk menggantikan properti header yang sudah ditentukan. Ini adalah parameter opsional yang memiliki boolean benar sebagai nilai default. Ini menimpa pengaturan tajuk yang ditentukan secara default. Kami dapat menonaktifkan perilaku default dengan menyetel Salah untuk parameter ini.


<?php
header('WWW-Authenticate: Negotiate');
echo ('header WWW-Authenticate is set to Negotiate n');
header('WWW-Authenticate: NTLM', false);
echo ('header WWW-Authenticate is changed to NTLM');
?>

$respon_code

Ini juga merupakan parameter opsional yang berisi nilai integer default 0. Ini untuk mengatur kode respons HTTP. Ini berlaku jika dan hanya jika header tidak kosong.

Penggunaan fungsi header () PHP

Daftar item menunjukkan beberapa penggunaan fungsi header PHP. Artikel ini menyertakan contoh untuk menjelaskan penggunaan fungsi header().

  • Itu mengubah lokasi tajuk dan mengarahkan ulang halaman.
  • Ini mengatur jenis konten dan meminta untuk mengunduh konten.
  • Ini menyiapkan kode status HTTP untuk ditanggapi.
  • Ini menetapkan properti caching dan menimpa perilaku caching yang ada.

PHP header() contoh

Pengalihan halaman menggunakan header() Lokasi

Penggunaan pengaturan lokasi header PHP adalah sebagai berikut. Ini dimulai dengan Lokasi kata kunci diikuti oleh URI target.
Fungsi header mengeksekusi pengalihan halaman dalam PHP di sisi server. Kode di bawah ini menggunakan pernyataan keluar PHP. Itu berhenti mengeksekusi kode berikut setelah pengalihan.


<?php
// PHP header with Location to redirect
header("Location: https://phppot.com");
exit;
?>

Ia menerima URI relatif dan absolut untuk pengalihan.

Beberapa klien lama menerima URI mutlak. Kode di bawah ini membentuk URI absolut secara dinamis untuk mengatur lokasi header. Ini menggunakan $_SERVER global $_SERVER[‘PHP_SELF’], $_SERVER[‘HTTP_HOST’] dan dirname().


<?php
$subDirectory = rtrim(dirname($_SERVER['PHP_SELF']), "/\");
$fileName = "example.php";
header("Location: http://" . $_SERVER['HTTP_HOST'] . "https://phppot.com/" . $subDirectory . "https://phppot.com/" . $fileName);
?>

Kode di atas menemukan nama subdirektori file. Kemudian, itu memangkas garis miring yang tidak perlu di ujung string.

Keluarkan file PDF menggunakan header() Jenis konten dan konten-disposisi

Skrip PHP ini menetapkan tipe konten dan disposisi konten untuk memaksa mengunduh. Ini mengeluarkan dokumen dalam tipe konten yang ditentukan.

Ini mengatur aplikasi/pdf untuk menampilkan file PDF ke browser. Ini mengatur sumber dan tujuan untuk membaca dan menyiapkan dokumen keluaran.

Kode ini akan menampilkan dialog untuk menyimpan dokumen PDF yang dihasilkan. Kami telah menggunakan metode jsPDF save() untuk menampilkan unduhan PDF ke browser.


<?php
//Set header content type as PDF
header("Content-type:application/pdf");

// It will be called downloaded.pdf
header("Content-Disposition:attachment;filename=output.pdf");

// The source file to read content
readfile("source.pdf");
?>

Jika Anda ingin mengirim respons sebagai JSON, pada perubahan di atas “Content-type” menjadi application/json.

Cegah caching halaman

Kode di bawah ini mengatur header PHP() untuk mencegah browser melakukan caching konten halaman. Dengan menentukan pengaturan header ini, itu menimpa mekanisme caching default.

Ini menggunakan opsi caching HTTP 1.1 untuk mengatur Cache-Control. Ini menempatkan nilai-nilai tanpa cache, harus memvalidasi ulang tp header ini

Ini mengatur Kedaluwarsa header dengan tanggal yang lalu dan memberi tahu klien bahwa tidak ada lagi konten yang di-cache. Jadi, itu akan mengirim permintaan HTTP ke server untuk membaca konten.


<?php
// HTTP/1.1 caching options
header("Cache-Control: no-cache, must-revalidate"); 
// Past date time as the expiry
header("Expires: Mon, 2 Jul 1963 03:00:00 GMT");
?>

<!-- Page template HTML begins -->

Fungsi dan contoh PHP terkait

Fungsi di bawah ini terkait dengan fungsi header PHP. Mari kita lihat tujuan dari fungsi-fungsi ini dengan contoh sederhana.

header_terkirim()

Fungsi ini memastikan bahwa header sudah dikirim ke klien. Ini akan mengembalikan boolean benar atau Salah.

Ia menerima parameter opsional $filename dan $linenumber yang diteruskan dengan referensi. Ini akan digunakan nanti dan tidak perlu menetapkannya sebelum memanggil header_sent().

PHP menetapkan nama file sumber ke parameter $filename. Juga, ia menetapkan parameter kedua dengan nomor baris di mana output dimulai.

Fungsi ini menghindari terjadinya kesalahan fatal terkait header. Contoh di bawah ini mencetak pesan kesalahan eksplisit dengan menginterpolasi variabel $filename dan $linenum.


<?php
// Check if header sent already
if (!headers_sent()) {
    header('Location: http://yourdomain.com/');
    exit;
}

// Set optional $filename of the source PHP and 
// $linenum where output starts
if (!headers_sent($filename, $linenum)) {
    header('Location: http://yourdomain.com/');
    exit;
} else {
    // prints error message to avoid fatal errors
    echo "Headers already sent in $filename on line $linenum";
    exit;
}
?>

header_hapus()

Tujuan dari fungsi ini dapat dimengerti dengan namanya. Ini untuk menghapus header yang sudah disetel.

Ia menerima nama header sebagai parameternya. Nilainya tidak peka huruf besar/kecil.


<?php
//Set header content type as JSON
header("Content-type:application/json");

header_remove("content-type");
?>

daftar_tajuk()

Fungsi PHP ini mengembalikan daftar header yang sudah dikirim atau header yang akan dikirim. Ini mengembalikan output dalam bentuk array PHP.

Kode ini mengatur cookie dan header PHP. Ini menetapkan id acak anggota ke dalam indeks cookie PHP dan menetapkan tipe konten sebagai teks biasa.


<?php
//set cookie to store random number as member_id
setcookie('member_id', rand(10000, 99999));

// custom header
header("X-Sample: Example");

// set content-type as plain text
header('Content-type: text/plain');

/* Prints the set headers */
var_dump(headers_list());
?>

Program ini mencetak daftar header sebagai berikut.


array(4) {
  [0]=>
  string(24) "X-Powered-By: PHP/7.4.21"
  [1]=>
  string(27) "Set-Cookie: member_id=87530"
  [2]=>
  string(17) "X-Sample: Example"
  [3]=>
  string(38) "Content-type: text/plain;charset=UTF-8"
}

header_register_callback()

NS header_register_callback() fungsinya adalah untuk mendaftarkan fungsi panggilan balik tanpa argumen. PHP memanggil fungsi callback setelah siap mengirim semua header.


header_register_callback(callable $callbackFunction);

Kesimpulan

Ya, kami telah melihat artikel yang rumit tentang header PHP. Saya harap ini mencakup semua poin langsung dan terkait tentang fungsi ini.

Ini memberikan berbagai contoh dalam header PHP untuk mengatur tipe konten, caching dan banyak lagi. Juga, ini mencakup fungsi terkait seperti header_list(), header_remove(), dll.

Jika Anda memiliki komentar atau saran, bagikan di bagian komentar.

Kembali ke Atas


Source link