2013-10-14 3 views
2

У PHP есть список зарезервированных переменных, visit here. Если я использую одно из зарезервированного ключевого слова в качестве переменной, оно работает для меня.Могу ли я использовать зарезервированную переменную PHP в качестве переменной?

<?php 
    $_GET = 10; 
    echo $_GET;//10 
?> 

Пожалуйста, исправьте меня, если мое понимание неверно?

+0

Не делай этого ... Это глобальная переменная-массив. Do '$ _GET ['myvar'] = 10' .. если вам нужно. – Daniel

+0

пожалуйста, не делайте пожалуйста. – sevenseacat

+1

Невинные котята умирают, когда вы это делаете. Подумайте о котятах! –

ответ

11

«Предопределенный» - это не то же самое, что «зарезервировано». PHP дает эти переменные значения по умолчанию, но вы все равно можете использовать их имена для своих целей. Но вы не должны, так как это плохой стиль.

-5

$ _GET не является зарезервированной переменной.

$_GET - ассоциативный массив переменных, переданных текущему скрипту через параметры URL. Также является суперглобальным. Прочитайте документацию, чтобы узнать, как использовать его

Вы должны использовать как

$_GET['key']=10;//good 

Ведение

$_GET =10;//bad 

перепишет значение, и это работает, но это очень неправильный способ использовать суперглобальный и они не были предназначены для работы таким образом.

+0

почему downvoter ?, если что-то не так, я хотел бы знать –

+1

Вы не ошибаетесь, но вы не решаете вопрос. (а не downvoter) –

+0

Могу ли я использовать зарезервированную переменную PHP как мою переменную? Нет, вы не можете –

0

Я не могу представить ситуацию, в которой вы хотели бы сделать то, что вы делаете gesting.

в случае $ _GET, $ _SESSION, это массивы, где вы можете назначить пару значений ключа по желанию, для чего они предназначены.

$_SESSION["UID"]=username; 

, например

1

Если вы передаете данные GET в этот файл как http://example.com/example.php?id=1

Тогда он будет конфликтовать с $ _GET переменной ..

$_GET = Array { [id] => 1 }

После вашего заявления значение будет изменено как

$_GET = 10

Это перезапишет старое значение ..

Смежные вопросы