Bagaimana saya bisa mendapatkan url saat ini di php?

Bahasa PHP menampilkan konstanta super global yang dapat berisi berbagai informasi. Anda dapat mengidentifikasi salah satu dari konstanta global ini dengan menggunakan satu garis bawah di awal namanya

Super global yang akan kita gunakan, khususnya, disebut “

development.local
0“. Konstanta PHP ini berisi informasi tentang permintaan saat ini, termasuk header, jalur, dan lokasi skrip

Menggunakan informasi yang disediakan oleh konstanta ini, kita akan dapat menggunakan PHP untuk mendapatkan URL halaman saat ini

Sebelum kita melangkah lebih jauh, ada implikasi keamanan dari penggunaan sebagian besar variabel yang disimpan dalam konstanta ini. Misalnya, klien dapat menyetel “

development.local
_1” dan “
development.local
2” ke nilai apa pun

Pada bagian selanjutnya, kami akan menunjukkan kepada Anda bagaimana Anda dapat mengambil setiap bagian dari

Daftar isi

Mendapatkan URL Halaman Saat Ini di PHP

Tidak ada fungsi atau variabel tunggal yang dapat kita manfaatkan untuk membuat URL halaman saat ini di PHP. Sebagai gantinya, kita harus menyatukan kembali URL menggunakan beberapa nilai

Selama beberapa bagian berikutnya, kita akan dengan cepat membahas setiap variabel yang akan kita gunakan dan menampilkan jenis data yang diberikannya

Jika Anda lebih suka melewati perincian, buka bagian "".

Mengambil Hostname dalam PHP

Informasi pertama yang kita perlukan untuk mendapatkan URL halaman saat ini adalah nama host. Nama host seperti label yang mengidentifikasi perangkat. Dalam hal URL, ini sering kali merupakan nama domain situs web

Misalnya, nama host untuk situs web kami adalah “

development.local
3“

Nama host diatur dalam larik “

development.local
_0” di bawah kunci “
development.local
1“. Cuplikan kode kecil kami di bawah ini menunjukkan betapa sederhananya untuk mengambil nilai ini

<?php
echo $_SERVER['HTTP_HOST'];
?>
_

Menjalankan cuplikan kecil ini, Anda hanya akan mendapatkan nama host untuk halaman Anda saat ini. Kami akan menggunakan ini untuk membangun URL halaman penuh dalam PHP pada akhirnya

Misalnya, kami mendapatkan nilai berikut dari menjalankan ini di server pengembangan lokal kami

development.local

Mendapatkan URI Permintaan di PHP

Informasi kedua yang kita perlukan untuk mendapatkan URL halaman saat ini di PHP adalah URI permintaan. URI adalah bagian dari URL setelah nama host, termasuk string kueri

Misalnya dengan URL “

development.local
_6” permintaan URI akan menjadi “
development.local
7“

Seperti nama host, URI permintaan juga tersedia dalam konstanta super global “

development.local
0”

Anda bisa mendapatkan nilai ini dengan menggunakan kunci “

development.local
_9” dari array “
development.local
0”, seperti yang ditunjukkan di bawah ini

<?php
echo $_SERVER['REQUEST_URI'];
?>

Menguji ini lagi dalam skrip “

<?php
echo $_SERVER['REQUEST_URI'];
?>
1” kecil kami, kami mendapatkan yang berikut

/test.php?t=pimylifeup

Memeriksa HTTP atau HTTPS dalam PHP

Bagian terakhir yang kita perlukan untuk mendapatkan URL halaman saat ini di PHP adalah protokol yang digunakan untuk koneksi ini. Hal ini penting karena memberi tahu kami apakah URL saat ini berisi “

<?php
echo $_SERVER['REQUEST_URI'];
?>
2” atau “
<?php
echo $_SERVER['REQUEST_URI'];
?>
3“

Protokolnya mungkin yang paling sulit untuk diambil kembali, tetapi masih sangat mudah

Untuk memeriksa apakah pengguna menggunakan HTTPS untuk permintaan saat ini, kita dapat memeriksa "

development.local
0" super global dan melihat apakah variabel "
<?php
echo $_SERVER['REQUEST_URI'];
?>
5" tidak disetel ke "
<?php
echo $_SERVER['REQUEST_URI'];
?>
6"

Penggunaan (

<?php
echo $_SERVER['REQUEST_URI'];
?>
_7) memungkinkan kita menyederhanakan pernyataan bersyarat ini menjadi satu baris. Jika “
<?php
echo $_SERVER['REQUEST_URI'];
?>
8” tidak sama dengan “
<?php
echo $_SERVER['REQUEST_URI'];
?>
6” kami menyetel protokol ke “
/test.php?t=pimylifeup
0“, selain itu kami menyetelnya ke “
/test.php?t=pimylifeup
1“

<?php
$protocol = $_SERVER['HTTPS'] !== 'off' ? "https://" : "http://";
echo $protocol;
?>

Meskipun alangkah baiknya jika hanya itu yang perlu kita lakukan, ada kemungkinan kunci “

<?php
echo $_SERVER['REQUEST_URI'];
?>
5” tidak tersedia atau kosong

Kami juga dapat memeriksa apakah kunci "

/test.php?t=pimylifeup
_3" disetel ke
/test.php?t=pimylifeup
4 (Port yang digunakan oleh HTTPS secara default)

Mari kita sesuaikan kembali kodenya, sekarang gunakan fungsi PHP “

/test.php?t=pimylifeup
5” pada “
<?php
echo $_SERVER['REQUEST_URI'];
?>
8” untuk melihat apakah itu tidak kosong. Jika kosong, kami menggunakan operator atau (
/test.php?t=pimylifeup
7) untuk memeriksa apakah kunci “
/test.php?t=pimylifeup
3” disetel ke
/test.php?t=pimylifeup
4

<?php
$protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') || $_SERVER['SERVER_PORT'] === 443 ? "https://" : "http://";
echo $protocol;
?>

Menjalankan salah satu dari contoh kode ini akan memberi Anda protokol yang digunakan untuk koneksi masuk

Server pengembangan kami disiapkan untuk melayani melalui HTTPS, jadi kami mendapatkan hasil sebagai berikut

https://

Menyatukan Semuanya untuk Mendapatkan URL Halaman Saat Ini di PHP

Sekarang setelah kita mengetahui cara mendapatkan protokol, nama host, dan URI permintaan, kita dapat menggunakannya untuk membuat URL halaman penuh

Pertama, kita akan menyusun protokol menggunakan array “

development.local
0” menggunakan kedua tombol “
<?php
echo $_SERVER['REQUEST_URI'];
?>
5” dan “
/test.php?t=pimylifeup
3”. Kami akan menyimpan protokol dalam variabel yang disebut "
<?php
$protocol = $_SERVER['HTTPS'] !== 'off' ? "https://" : "http://";
echo $protocol;
?>
3"

Setelah kami menyusun protokol yang benar, kami dapat menggunakannya untuk membangun URL halaman saat ini menggunakan ekspansi string PHP

Kami membuat string PHP ini menggunakan tanda kutip ganda, mereferensikan masing-masing variabel berikut di dalam string dengan urutan sebagai berikut “

<?php
$protocol = $_SERVER['HTTPS'] !== 'off' ? "https://" : "http://";
echo $protocol;
?>
3“, “
<?php
$protocol = $_SERVER['HTTPS'] !== 'off' ? "https://" : "http://";
echo $protocol;
?>
5” dan “
<?php
$protocol = $_SERVER['HTTPS'] !== 'off' ? "https://" : "http://";
echo $protocol;
?>
6“

Saat PHP memproses string, itu akan memperluas setiap variabel menjadi nilainya

Terakhir, kami menggunakan kata kunci echo PHP untuk menampilkan nilai yang telah kami simpan di variabel “

<?php
$protocol = $_SERVER['HTTPS'] !== 'off' ? "https://" : "http://";
echo $protocol;
?>
7”

<?php

$protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') || $_SERVER['SERVER_PORT'] === 443 ? "https://" : "http://";

$page_url = "{$protocol}{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}";

echo $page_url;

?>

Setelah menjalankan bagian PHP ini, Anda akan mendapatkan output URL halaman saat ini. Sebagai contoh kami, kami mendapatkan URL berikut

https://development.local/test.php

Mari kita selesaikan ini dengan menulis sebuah fungsi untuk memungkinkan Anda mendapatkan URL halaman saat ini dalam PHP dengan cepat

Dengan ini kami membuat fungsi yang disebut “________26______8“. Di dalam fungsi ini, kami menggunakan kode yang sama sebelumnya

Namun, kali ini alih-alih menyetel URL halaman ke variabel, kami akan mengembalikannya sebagai string

<?php
function get_current_page_url() {
    $protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') || $_SERVER['SERVER_PORT'] === 443 ? "https://" : "http://";

    return "{$protocol}{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}";
}
?>

Sekarang kapan pun Anda membutuhkan URL halaman saat ini, Anda dapat menggunakan “

<?php
$protocol = $_SERVER['HTTPS'] !== 'off' ? "https://" : "http://";
echo $protocol;
?>
8“

Kesimpulan

Dalam panduan ini, kami telah menunjukkan kepada Anda bagaimana mungkin mendapatkan URL halaman saat ini dalam PHP

Berkat konstanta global “

development.local
_0”, semua informasi yang kami perlukan untuk membuat URL halaman tersedia. Saat menggunakan ini di lingkungan produksi, Anda harus mempertimbangkan untuk membersihkan nilai guna memastikan keamanannya

Jika Anda memiliki pertanyaan tentang cara mendapatkan URL halaman saat ini di PHP, silakan beri komentar di bawah

Silakan lihat banyak tutorial PHP kami yang lain, atau jika Anda ingin mempelajari bahasa baru, lihat panduan pengkodean kami

Bagaimana cara mendapatkan URL saat ini?

URL saat ini dapat diperoleh dengan menggunakan properti 'URL' dari objek Dokumen yang berisi informasi tentang URL saat ini . Properti 'URL' mengembalikan sebuah string dengan lokasi lengkap dari halaman saat ini, bersama dengan berisi string yang memiliki protokol HTTP seperti ( http. //).

Bagaimana cara mendapatkan data dari URL di PHP?

Parameter dari string URL dapat diambil dalam PHP menggunakan fungsi parse_url() dan parse_str() .

Bagaimana cara memanggil URL di PHP?

Cara memanggil URL di PHP – Menggunakan cURL .
Langkah 1. buat sumber daya curl $ch = curl_init();
Langkah 2. atur url yang ingin Anda panggil curl_setopt($ch, CURLOPT_URL, "www. google. lk");.
Langkah 3. setel tipe keluaran, di sini transfer keluaran sebagai string curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);