Sunday, 31 July 2011

PHP Array

PHP Array

An array is a data structure that stores one or more values in a single value. For experienced programmers it is important to note that PHP's arrays are actually maps (each key is mapped to a value).

PHP - A Numerically Indexed Array

If this is your first time seeing an array, then you may not quite
understand the concept of an array. Imagine that you own a business and
you want to store the names of all your employees in a PHP variable. How
would you go about this?
It wouldn't make much sense to have to store each name
in its own variable. Instead, it would be nice to store all the employee names inside
of a single variable. This can be done, and we show you how below.


PHP Code:

$employee_array[0] = "Bob";
$employee_array[1] = "Sally";
$employee_array[2] = "Charlie";
$employee_array[3] = "Clare";


In the above example we made use of the key / value structure of an array. The keys
were the numbers we specified in the array and the values were the names of the employees.
Each key of an array represents a value that we can manipulate and reference. The
general form for setting the key of an array equal to a value is:
  • $array[key] = value;

If we wanted to reference the values that we stored into our array, the following
PHP code would get the job done.

Note: As you may have noticed from the above code example, an array's keys start from 0 and not 1. This is a very common problem for many new programmers who are used to counting from 1 and lead to "off by 1" errors. This is just something that will take experience before you are fully comfortable with it.

PHP Code:

echo "Two of my employees are "
. $employee_array[0] . " & " . $employee_array[1]; 
echo "<br />Two more employees of mine are " 
. $employee_array[2] . " & " . $employee_array[3];



Display:

Two of my employees are Bob & Sally

Two more employees of mine are Charlie & Clare

PHP arrays are quite useful when used in conjunction with
loops, which we will talk about in a later lesson. Above we showed
an example of an array that made use of integers for the keys (a numerically indexed
array). However, you can also specify a string as the key, which is referred to as an associative array.

PHP - Associative Arrays

In an associative array a key is associated with a value. If you wanted
to store the salaries of your employees in an array, a numerically indexed array would
not be the best choice. Instead, we could use the employees names as the keys in our
associative array, and the value would be their respective salary.


PHP Code:

$salaries["Bob"] = 2000;
$salaries["Sally"] = 4000;
$salaries["Charlie"] = 600;
$salaries["Clare"] = 0;

echo "Bob is being paid - $" . $salaries["Bob"] . "<br />";
echo "Sally is being paid - $" . $salaries["Sally"] . "<br />";
echo "Charlie is being paid - $" . $salaries["Charlie"] . "<br />";
echo "Clare is being paid - $" . $salaries["Clare"];


Display:

Bob is being paid - $2000

Sally is being paid - $4000

Charlie is being paid - $600

Clare is being paid - $0

Once again, the usefulness of arrays will become more apparent
once you have knowledge of for and while loops.

No comments:

Post a Comment