{"id":37085,"date":"2019-02-11T18:45:01","date_gmt":"2019-02-11T18:45:01","guid":{"rendered":"https:\/\/www.oracletutoring.ca\/blog\/?p=37085"},"modified":"2019-02-11T18:46:54","modified_gmt":"2019-02-11T18:46:54","slug":"computer-science-php-the-register_globals-phenomenon","status":"publish","type":"post","link":"https:\/\/www.oracletutoring.ca\/blog\/computer-science-php-the-register_globals-phenomenon\/","title":{"rendered":"Computer science: PHP: the register_globals  phenomenon"},"content":{"rendered":"\n<h2>Self-tutoring about PHP: the tutor looks into the hazard of <span style=\"font-family:monospace;font-size:120%\">register_globals<\/span>.<\/h2>\n<p>\nIn PHP, <span style=\"font-family:monospace;font-size:120%\">register_globals<\/span>, when set to 1 (or on), could allow variables to be created and set from within web requests. In particular, if a variable was uninitialized in a function on the server, it could be initialized with a compromising value from a request.\n<\/p>\n<table class=\"jan24_mobile\"><tr><td>PHP version<\/td><td><span style=\"font-family:monospace;font-size:120%\">register_globals<\/span> status<\/td><\/tr>\n<tr><td>&#60;4.2<\/td><td>default ON<\/td><\/tr>\n<tr><td>&#8805;4.2<\/td><td>default OFF<\/td><\/tr>\n<tr><td>5.3.0<\/td><td>deprecated<\/td><\/tr>\n<tr><td>5.4.0<\/td><td>removed<\/td><\/tr>\n<\/table>\n<p>\nFor specific purposes, <span style=\"font-family:monospace;font-size:120%\">register_globals<\/span> offered a useful and interesting option. However, its inherent security risk led to its removal from PHP.\n<\/p>\n<p>\nSource:\n<\/p><p>\n<a href=\"http:\/\/php.net\/manual\/en\/security.globals.php\">php.net<\/a>\n<\/p><p>\n<a href=\"http:\/\/php.net\/ChangeLog-4.php#4.2.0\">php.net<\/a><\/p>\nJack of <a href=\"https:\/\/www.oracletutoring.ca\">Oracle Tutoring by Jack and Diane,<\/a> Campbell River, BC.\n","protected":false},"excerpt":{"rendered":"<p>Self-tutoring about PHP: the tutor looks into the hazard of register_globals. In PHP, register_globals, when set to 1 (or on), could allow variables to be created and set from within web requests. In particular, if a variable was uninitialized in &hellip;<\/p>\n<p class=\"read-more\"> <a class=\"more-link\" href=\"https:\/\/www.oracletutoring.ca\/blog\/computer-science-php-the-register_globals-phenomenon\/\"> <span class=\"screen-reader-text\">Computer science: PHP: the register_globals  phenomenon<\/span> Read More &raquo;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2955],"tags":[],"class_list":["post-37085","post","type-post","status-publish","format-standard","hentry","category-php"],"_links":{"self":[{"href":"https:\/\/www.oracletutoring.ca\/blog\/wp-json\/wp\/v2\/posts\/37085","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.oracletutoring.ca\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.oracletutoring.ca\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.oracletutoring.ca\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.oracletutoring.ca\/blog\/wp-json\/wp\/v2\/comments?post=37085"}],"version-history":[{"count":8,"href":"https:\/\/www.oracletutoring.ca\/blog\/wp-json\/wp\/v2\/posts\/37085\/revisions"}],"predecessor-version":[{"id":37093,"href":"https:\/\/www.oracletutoring.ca\/blog\/wp-json\/wp\/v2\/posts\/37085\/revisions\/37093"}],"wp:attachment":[{"href":"https:\/\/www.oracletutoring.ca\/blog\/wp-json\/wp\/v2\/media?parent=37085"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.oracletutoring.ca\/blog\/wp-json\/wp\/v2\/categories?post=37085"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.oracletutoring.ca\/blog\/wp-json\/wp\/v2\/tags?post=37085"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}