11

What does this mean in PHP and when is the time to use it?

 =>

Another example.

 foreach ($parent as $task_id => $todo)
Ayman Hourieh
  • 113,954
  • 21
  • 138
  • 113
sawu
  • 119
  • 2
  • 5

5 Answers5

19

To elaborate a bit on what has already been said.

Assuming that you know about arrays in PHP. Which is really a way of grouping a "list" of items under the same variable given a certain index - normally a numeric integer index starting from 0. Say we want to make a list of the indexes English term, that is,

Zero
One
Two
Three
Four
Five

Representing this in PHP using an array could be done like so:

$numbers = array("Zero", "One", "Two", "Three", "Four", "Five");

Now, what if we wanted the reverse situation? Having "Zero" as key and 0 as value? Having a non-integer as a key of an array in PHP is called an associative array where each element is defined using the syntax of "key => value", so in our example:

$numbers = array("Zero" => 0, "One" => 1, "Two" => 2, "Three" => 3, "Four" => 4, "Five" => 5);

The question now becomes: What if you want both the key and the value when using a foreach statement? Answer: the same syntax!

$numbers = array("Zero" => 0, "One" => 1, "Two" => 2, "Three" => 3, "Four" => 4, "Five" => 5);

foreach($numbers as $key => $value){
    echo "$key has value: $value\n";
}

This would display

Zero has value: 0
One has value: 1
Two has value: 2
Three has value: 3
Four has value: 4
Five has value: 5
Peter Mortensen
  • 28,342
  • 21
  • 95
  • 123
kastermester
  • 3,008
  • 6
  • 25
  • 43
11

It is used to create an associative array like this:

$arr = array( "name" => "value" );

And also in a foreach loop like this:

foreach ($arr as $name => $value) {
    echo "My $name is $value";
}
Peter Mortensen
  • 28,342
  • 21
  • 95
  • 123
Ramon
  • 7,604
  • 3
  • 30
  • 41
6

You can use it working with arrays:

array ("key" => "value", "key" => "value")

... or in a foreach statement:

foreach ($my_array as $key => $value)
...
Pekka
  • 418,526
  • 129
  • 929
  • 1,058
3

=> is the array association operator, similar to the = assignment operator.

It is used mainly in array declarations of the form $arr = array( $key=>$value) which is equivalent to $arr[$key] = $value, and of course, in the foreach control structure to assign values to key and value loop variables.

Peter Mortensen
  • 28,342
  • 21
  • 95
  • 123
dar7yl
  • 3,577
  • 23
  • 19
1

It is used with associative arrays.

For example,

$gender = array('male' => 'M', 'female' => 'F');

Where $gender['male'] would give you 'M' and $gender['female'] will give you 'F'.

Peter Mortensen
  • 28,342
  • 21
  • 95
  • 123
Aishwar
  • 8,204
  • 8
  • 54
  • 75