Visual example of how PHP handles the super-global array variable "$_POST"

Author: D.Shaun Morgan

Versions and Skill Level
  • PHP Version - PHP 5x
  • Reader skill level - Beginner
  • XHTML 1.0 Transitional - interchangeable with HTML 4.0
See Also:
  1. How can I pass a PHP variable from one page to another

Imagine that an array-name like the one I am using here, "$_POST," is a bookcase. On this bookcase there is the possibility for one or more shelves to be built. Each shelf will have the same name of whatever we store on it. How many shelves we build and what we name them depends on what we call the stuff, how much stuff we need to store, and how we go about storing it.

Now lets say that what we want to store is a miniature bookcase labeled "$first_name." In this instance we know that our miniature bookcase has five shelves labeled 0 - 4, from top to bottom.

  • Shelf number 0 has a trinket shaped like the small letter "a" stored on it.
  • Shelf number 1 has a trinket shaped like the small letter "b" stored on it
  • Shelves 2 through 4 have c, d, and e respectively.

Notice that $_POST is an array. The miniature bookcase in this example is also an array. Thus, we are storing an array inside of an array in PHP.



Say I need to use trinket "b." To get trinket "b" from the miniature bookshelf "first_name" located on bookshelf "$_POST," I will do the following:

  • I will go to "$_POST" and find a shelf labeled "first_name."
  • Then, I will take "$first_name" out of "$_POST."
$first_name = $_POST['first_name'];
  • Next I will look in the spot where I remember putting trinket "b."
$trinket_b = $first_name[1];

Now, I'll write a line of PHP that will print-to-screen what I retrieved from "$first_name" -- shelf number 1.


$first_name = $_POST['first_name'];

$trinket_b = $first_name[1];

echo $trinket_b;

Note that I could have just as easily written


echo $_POST['first_name'];


and produced the same result. Sometimes, that is even the best way to do it

The example above, while far from complete, provides a basic way of thinking about arrays. The same idea can be applied to the other super globals -- $_GET, $_SESSION, and $_COOKIE.

Author: D.Shaun Morgan