2017-04-19 1 views
0

Also zum Beispiel habe ich den folgenden Code.Können PHP-Pointer auf POST und GET gesetzt werden?

<?PHP 
$a = "key"; 
$b = "val"; 
$val = & $_POST[$a.$b]; 

if(isset($val)) 
    echo "Is this valid ? What if I removed the & in front of $val?"; 
+1

Haben Sie es versucht? – hering

+0

Ja, es funktioniert nicht. Ich wollte Zeiger nicht auf tatsächliche Variable setzen, wenn möglich – Adminy

+1

glaube nicht, dass Ihr Code überhaupt ausführen kann Sie nicht sogar die if-Anweisung öffnen und für eine Variable ist es besser zu tun, wenn (! Leer ($ val)) { und was ist das = & $ _POST und ich würde $ c = $ a verwenden. $ b; dann $ val = $ _ POST [$ c]; – Gert

Antwort

0
$val = isset($_POST[$a.$b]) ? $_POST[$a.$b] : null; 

Dies wird den Wert gesetzt, wenn es vorhanden ist, oder es null, wenn dies nicht der Fall gesetzt. Die & weist die Variable als Referenz zu. Was das bedeutet, wenn Sie den Wert von $ val ändern, wird auch $ _POST [$ a. $ B] aktualisiert. Es ist also nicht wirklich notwendig.

+0

Ich möchte nur den Zeiger auf $ _POST [$ a. $ B] nicht den Wert erhalten. – Adminy

+0

isset ($ _ POST [$ a. $ B]) ist genug, um zu sagen, ob es da ist oder nicht. Wenn Sie möchten, dass sich der Wert ändert, wenn Sie $ val ändern, behalten Sie das & bei, wenn Sie es zuweisen. – delboy1978uk

Verwandte Themen