Próbuję zrefaktoryzować stary projekt PHP, a ten projekt nie ma jawnego dostępu do zmiennych $_GET, $_POST. Na przykład używa po prostu $ab zamiast $_POST['ab']. Mój lokalny serwer nie pozwala na to w tej chwili.

Jak mogę zmienić moje ustawienie php.ini tak, aby uzyskać bezpośredni dostęp do tych zmiennych $_POST i $_GET bez odwoływania się do nich za pomocą $_GET i $_POST?

Muszę to zrobić za pomocą ustawień serwerowych, ponieważ jest tak wiele plików, aby dodać 2 wiersze ustawień na górze.

php
3
user482594 23 luty 2012, 01:13

3 odpowiedzi

Najlepsza odpowiedź

W php.ini ustaw opcję register_globals na 'on'

Jest to jednak bardzo bardzo zła praktyka i sugeruję, abyś zrobił to tymczasowo.

5
SenorAmor 23 luty 2012, 01:15

Możesz użyć funkcji import_request_variables. Po prostu dodaj linię

import_request_variables("gp","");

Do globalnego pliku dołączanego.

Więc NIE MUSISZ włączać register_global ON.

Oto więcej informacji na ten temat http://php.net/manual/en /function.import-request-variables.php

0
prashant-patil 23 luty 2012, 03:53

Lepszym sposobem jest użycie tablicy superglobalnej $_REQUEST; zawiera połączenie tablic $_GET, $_POST, $_COOKIE i $_SESSION. Ale jeśli naprawdę jesteś pewien, że musisz użyć register_globals, możesz go obrócić on.

0
Chris Forrence 5 listopad 2013, 19:23