Herkes şu PHP kodu açıklayabilir misiniz?

4 Cevap

Herkes şu PHP kodu açıklayabilir misiniz?

function get_param($param_name, $param_type = 0)
    {
      global $HTTP_POST_VARS, $HTTP_GET_VARS;

      $param_value = "";
    	if (isset($_POST)) {
    	  if (isset($_POST[$param_name]) && $param_type != GET)
      	  $param_value = $_POST[$param_name];
    	  elseif (isset($_GET[$param_name]) && $param_type != POST)
      	  $param_value = $_GET[$param_name];
    	} else {
    	  if (isset($HTTP_POST_VARS[$param_name]) && $param_type != GET)
      	  $param_value = $HTTP_POST_VARS[$param_name];
    	  elseif (isset($HTTP_GET_VARS[$param_name]) && $param_type != POST)
      	  $param_value = $HTTP_GET_VARS[$param_name];
    	}

    	return strip($param_value);
    }

function strip($value)
    {
    	if (get_magic_quotes_gpc() == 0) {
        	return $value;
    	} else {
    		return stripslashes($value);
    	}
    }


UPDATE

Bu gibi kullanılır:

$xml = get_param('xml');

4 Cevap

Kod get ve post verileri dizileri değerini alır. Ayrıca etkin sihirli tırnak php kurulumlarında eğik şeritler. Fonksiyon PHP'nin eski sürümü ile geriye dönük uyumluluk için yapılmış gibi görünüyor. PHP eski sürümlerini desteklemek için gerekli sürece ben bu kullanmak olmaz.

You don't need to make any changes for this to work in PHP 5, however I would just do the following: For Get data:

if(isset($_GET['param_name'])){
    // What ever you want to do with the value
}

Mesaj veriler için:

if(isset($_POST['param_name'])){
    // What ever you want to do with the value
}

PHP 5.3.0 kadar önerilmemektedir değil bu yana da Magic Quotes kadar okumalısınız ve bunun endişe gerekebilir.

: Güncellendi fonksiyonu olarak da yazılmış olabilir

function get_param($param_name, $param_type = 0)
{

  $param_value = "";
  if (isset($_POST[$param_name]) && $param_type != GET){
      $param_value = $_POST[$param_name];
  }
  elseif (isset($_GET[$param_name]) && $param_type != POST){
      $param_value = $_GET[$param_name];
  }
  return strip($param_value);
}

Şerit yalnız bırakılabilir.

function get_param($param_name, $param_type = 0)

Bu verilen bir tür, POST ile, bir parametre değeri döndürür veya GET, which is optional. Değeri bölü şeritli.

function strip($value)

Bu eğik çizgi olmadan parametreyi döndürür.

Bu kodu 2003 öncesi yazılmış olduğu, diğer yorum katılıyorum, ve kullanılmaması gerektiğini, sürece eski kod desteklemek için.

Kodu ($param_name) ve (GET veya POST) bulunabilir bekleniyor HTTP istek türü, daha sonra mevcut bakar bir parametrenin adını alan bir fonksiyondur ($_GET ve $_POST) ve önerilmeyen ($HTTP_GET_VARS ve bu adı eşleşen bir değer için $HTTP_POST_VARS) isteği değişken dizileri. Önce döndürür, onu buldum value ekstra eğik şerit çalışır.

Yani, örneğin, ben bu HTTP isteği geçtiyseniz:

http://www.example.com/explain_function.php?key=value

daha sonra fonksiyonu ran

get_param("key", "GET");

Bu "değer" dönecekti.

Bu parametrenin adına göre sorgu dizesi bir değer elde etmek için çalışıyor olduğu görülmektedir. İlk $ _POST değişkeni geçerli olup olmadığını görmek için kontrol, ve değilse, $ HTTP_POST_VARS kontrol edilir. Ikisinden biri geçerli ise, bu $ param_name adıyla değerini dönecektir. Örneğin, $ param_name = "foo", bu $ _POST ["foo"] kontrol eğer.