iPhone 8 Talebi Azaldığı için Apple Üretimi Azaltıyor

Nokia 8, 6GB RAM ile Almanya’ya Gelecek

LG V30, Çizilmeye, Bükmeye ve Yanık Testleri – Video

Xiaomi Mi A1 İncelemesi

PHP 5 Global Değişkenler

PHP Programlama Pazar Temmuz 23rd, 2017
653 Görüntülenme

Süper küreseller PHP 4.1.0’da tanıtıldı ve tüm kapsamlarda daima mevcut olan yerleşik değişkenlerdi.

PHP’de önceden tanımlanmış birçok değişken “superglobal” dir; bu, kapsamdan bağımsız olarak her zaman erişilebilir olmaları anlamına gelir; bunlara, özel bir şey yapmak zorunda kalmadan herhangi bir işlev, sınıf veya dosyadan erişebilirsiniz.

PHP superglobal değişkenleri şunlardır:

  • $GLOBALS
  • $_SERVER
  • $_REQUEST
  • $_POST
  • $_GET
  • $_FILES
  • $_ENV
  • $_COOKIE
  • $_SESSION

Bu bölüm, bazı superglobal’leri açıklayacak ve geri kalan kısım sonraki bölümlerde açıklanacaktır.

$ GLOBALS, PHP komut dosyasında herhangi bir yerden global değişkenlere erişmek için kullanılan bir PHP süper global değişkendir.

PHP, tüm global değişkenleri $ GLOBALS [index] adlı bir dizinde saklar. Dizin, değişkenin adını tutar.

Aşağıdaki örnek, $ GLOBALS süper global değişkeninin nasıl kullanılacağını göstermektedir:

<?php 
$x = 75; 
$y = 25;
 
function addition() { 
    $GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y']; 
}
 
addition(); 
echo $z; 
?>

Yukarıdaki örnekte, z, $ GLOBALS dizisinde bulunan bir değişken olduğundan işlevin dışından da erişilebilir!

PHP $_SERVER

$ _SERVER, üstbilgiler, yollar ve betik konumları hakkında bilgi barındıran bir PHP süper global değişkendir.

Aşağıdaki örnek, $ _SERVER içindeki bazı öğelerin nasıl kullanılacağını göstermektedir:

<?php 
echo $_SERVER['PHP_SELF'];
echo "<br>";
echo $_SERVER['SERVER_NAME'];
echo "<br>";
echo $_SERVER['HTTP_HOST'];
echo "<br>";
echo $_SERVER['HTTP_REFERER'];
echo "<br>";
echo $_SERVER['HTTP_USER_AGENT'];
echo "<br>";
echo $_SERVER['SCRIPT_NAME'];
?>

Aşağıdaki tabloda, $ _SERVER içinde gidebilecek en önemli unsurlar listelenmiştir:

KOD AÇIKLAMA
$_SERVER[‘PHP_SELF’] Halen yürütülmekte olan komut dosyasının dosya adını döndürür
$_SERVER[‘GATEWAY_INTERFACE’] Sunucunun kullandığı Ortak Ağ Geçidi Arabiriminin (CGI) sürümünü döndürür
$_SERVER[‘SERVER_ADDR’] Ana sunucunun IP adresini döndürür
$_SERVER[‘SERVER_NAME’] Ana sunucu sunucusunun adını döndürü
$_SERVER[‘SERVER_SOFTWARE’] Sunucu tanımlama dizesini döndürür (such as Apache/2.2.24)
$_SERVER[‘SERVER_PROTOCOL’] Bilgi protokolünün adını ve revizyonunu döndürür (such as HTTP/1.1)
$_SERVER[‘REQUEST_METHOD’] Sayfaya erişmek için kullanılan istek yöntemini döndürür (such as POST)
$_SERVER[‘REQUEST_TIME’] İsteğin başlama zaman damgasını döndürür (such as 1377687496)
$_SERVER[‘QUERY_STRING’] Sayfaya bir sorgu dizesi aracılığıyla erişilirse sorgu dizesini döndürür
$_SERVER[‘HTTP_ACCEPT’] Geçerli istekten Kabul başlığını döndürür
$_SERVER[‘HTTP_ACCEPT_CHARSET’] Geçerli istekteki Accept_Charset başlığını döndürür (such as utf-8,ISO-8859-1)
$_SERVER[‘HTTP_HOST’] Geçerli istekten Ana Bilgisayar üstbilgisini döndürür
$_SERVER[‘HTTP_REFERER’] Geçerli sayfanın tam URL’sini döndürür (tüm kullanıcı aracıları tarafından desteklenmediğinden güvenilir değildir)
$_SERVER[‘HTTPS’] Komut dosyası, güvenli bir HTTP protokolü üzerinden sorgulanır mı?
$_SERVER[‘REMOTE_ADDR’] Kullanıcının geçerli sayfayı izlediği IP adresini döndürür
$_SERVER[‘REMOTE_HOST’] Kullanıcının geçerli sayfayı görüntülediği ana bilgisayar adını döndürür
$_SERVER[‘REMOTE_PORT’] Web sunucusu ile iletişim kurmak için kullanıcının makinesinde kullanılan bağlantı noktasını döndürür
$_SERVER[‘SCRIPT_FILENAME’] Halen yürütülmekte olan komut dosyasının mutlak yol adını döndürür
$_SERVER[‘SERVER_ADMIN’] Web sunucusu yapılandırma dosyasındaki SERVER_ADMIN yönergesine verilen değeri döndürür (komut dosyası sanal bir ana bilgisayarda çalışıyorsa, bu sanal ana bilgisayar için tanımlanan değer olacaktır)
$_SERVER[‘SERVER_PORT’] İletişim için web sunucusu tarafından kullanılan sunucu makinesindeki bağlantı noktasını döndürür (80 gibi)
$_SERVER[‘SERVER_SIGNATURE’] Sunucu tarafından oluşturulan sayfalara eklenen sunucu sürümü ve sanal ana makine adını döndürür
$_SERVER[‘PATH_TRANSLATED’] Geçerli komut dosyasına dosya sistemi tabanlı yolu döndürür
$_SERVER[‘SCRIPT_NAME’] Geçerli komut dosyasının yolunu döndürür
$_SERVER[‘SCRIPT_URI’] Geçerli sayfanın URI’sini döndürür
PHP $_REQUEST

PHP $ _REQUEST, bir HTML formu gönderdikten sonra veri toplamak için kullanılır.

Aşağıdaki örnekte, bir giriş alanı ve bir gönderme düğmesi olan bir form gösterilmektedir. Bir kullanıcı “Gönder” i tıklayarak verileri gönderdiğinde, form verileri <form> etiketinin eylem özniteliğinde belirtilen dosyaya gönderilir. Bu örnekte, form verilerini işlemek için bu dosyanın kendisine işaret ediyoruz. Form verilerini işlemek için başka bir PHP dosyası kullanmak isterseniz, bunu istediğiniz dosya adına değiştirin. Ardından, giriş alanının değerini toplamak için süper global değişken $ _REQUEST’i kullanabiliriz:

<html>
<body>

<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
  Name: <input type="text" name="fname">
  <input type="submit">
</form>

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    // collect value of input field
    $name = $_REQUEST['fname'];
    if (empty($name)) {
        echo "Name is empty";
    } else {
        echo $name;
    }
}
?>

</body>
</html>
PHP $_POST

PHP $ _POST, bir HTML formunu method = “post” ile gönderdikten sonra form verilerini toplamak için yaygın olarak kullanılmaktadır. $ _POST değişkenleri iletmek için yaygın olarak kullanılır.

Aşağıdaki örnekte, bir giriş alanı ve bir gönderme düğmesi olan bir form gösterilmektedir. Bir kullanıcı “Gönder” i tıklayarak verileri gönderdiğinde, form verileri <form> etiketinin eylem özniteliğinde belirtilen dosyaya gönderilir. Bu örnekte, form verilerini işlemek için dosyanın kendisine işaret ediyoruz. Form verilerini işlemek için başka bir PHP dosyası kullanmak isterseniz, bunu istediğiniz dosya adına değiştirin. Daha sonra, $ _POST süper global değişkenini kullanarak giriş alanının değerini toplayabiliriz:

<html>
<body>

<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
  Name: <input type="text" name="fname">
  <input type="submit">
</form>

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    // collect value of input field
    $name = $_POST['fname'];
    if (empty($name)) {
        echo "Name is empty";
    } else {
        echo $name;
    }
}
?>

</body>
</html>
PHP $_GET

PHP $ _GET, bir HTML formunu method = “get” ile gönderdikten sonra form verilerini toplamak için de kullanılabilir.

$ _GET, URL’de gönderilen verileri de toplayabilir.

Parametrelerle bir köprü içeren bir HTML sayfasına sahip olduğumuzu varsayalım:

<html>
<body>

<a href="test_get.php?subject=PHP&web=webinyo.com">Test $GET</a>

</body>
</html>

Bir kullanıcı “Test $ GET” bağlantısını tıkladığında “subject” ve “web” parametreleri “test_get.php” adresine gönderilir ve daha sonra değerlerine “test_get.php” adresinden $ _GET ile erişebilirsiniz.

Aşağıdaki örnek “test_get.php” kodunu göstermektedir:

<html>
<body>

<?php 
echo "Study " . $_GET['subject'] . " at " . $_GET['web'];
?>

</body>
</html>

 

Yorumlar

Henüz hiç yorum yapılmamış.

Benzer İçerikler