O $ _GET ve $ _POST hem de veri almak mümkün aslında? Ve nasıl bu $ _REQUEST içinde ne ile ilgisi nedir?
Evet, bu mümkün. Böyle bir formu düşünün:
<form action="foobar.php?a=123&b=456" method="post">
<input type="text" name="a" value="llama">
<input type="text" name="b" value="duck">
<input type="submit" name="go" value="Submit me!">
</form>
Bu formu göndererek üzerinde, $_GET["a"] == "123"
, $_GET["b"] == "456"
, $_POST["a"] == "llama"
, $_POST["b"] == "duck"
ve $_POST["go"] == "Submit me!"
.
Bu $_REQUEST
superglobal depends on the value of the request_order
(veya eski variables_order
) PHP yapılandırma ayarı, the php.ini documentation olarak açıklıyor ilgilidir nasıl.
Kesinlikle hem veri olabilir ... aşağıdaki (çok basit) sayfasını düşünün:
<body>
<form method="post" action="params.php?myparam=myval">
<input type="text" name="param1"></input>
<input type="submit" name="submit" value="submit" />
</form>
</body>
action
şeklinde bir sorgu dizesi içerdiğine dikkat edin ve yöntem post
. $_GET
sorgu dizesi params içeren, $_POST
formu params içerir, ve $_REQUEST
hem dizileri birleştirilmiş parametreleri içerir:
array(3) {
["myparam"]=>
string(1) "myval"
["param1"]=>
string(0) ""
["submit"]=>
string(6) "submit"
}
Çıkış request_order
for controlling how the super-globals are processed in $_REQUEST
.
Isimleri rağmen, $ _GET ve $ _POST gerçekten bir GET veya POST gerekmez, çünkü PHP mümkündür.
Bu gerçek istek yöntem nedir önemli değil - bu bir PUT olabilir ve bu superglobals yine kalabalık olacaktı.