2016-03-23 5 views
-2

Ich habe eine Website, die Register_globals verwendet. Meine lokale PHP-Version ist 5.6. Ich weiß, dass register_globals ab PHP 5.3.0 DEPRECATED ist und in PHP 5.4 REMOVED. Aber ich muss es mit PHP 5.6 arbeiten lassen. Gibt es eine Möglichkeit, es zum Laufen zu bringen? Und gibt es irgendein Problem, wenn ich auf PHP 5.6 entwickle und es zur Produktion einsetze, die Gebrauch PHP 5.2 ist? DankeAktivieren Sie register_globals in PHP 5.6

+0

http://php.net/manual/en/security.globals.php –

+0

Well ... PHP 5.6 in den Entwicklungsprozess Verwendung zu Verwendung führen kann von PHP-Funktionalität, die nicht auf PHP 5.2 existiert. Sie werden damit konfrontiert, wenn Sie es auf dem Server bereitstellen, und Sie müssen zusätzliche Zeit für diesen problematischen Code investieren. Sie können möglicherweise das Verhalten von register_globals nachahmen, indem Sie eine benutzerdefinierte Funktion schreiben, die dasselbe macht. – Rolice

+0

Lesen Sie diese article http://pageconfig.com/post/register_globals-is-back-php-implementation –

Antwort

1

Es ist nicht möglich, als Eigenschaft von PHP zu aktivieren, aber ich habe eine Bibliothek entwickelt, um register_globals zu emulieren.

merciful_polluter register_globals und magic_quotes_gpc emulieren (Beide wurden in PHP 5.4 entfernt)

<?php 
/** 
* example.com/?foo=3&bar=12 
*/ 

(new Gongo\MercifulPolluter\Requst)->pollute(); 

global $foo, $bar; 
var_dump($foo, $bar); 

/** 
* int(3) 
* int(12) 
*/ 

Unterstützung PHP-Versionen 5.4, 5.5, 5.6 und 7.0.

ACHTUNG: Diese Bibliothek ist nur ein Emulator