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
  • 132,184
  • 23
  • 144
  • 116
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
  • 30,738
  • 21
  • 105
  • 131
kastermester
  • 3,058
  • 6
  • 28
  • 44
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
  • 30,738
  • 21
  • 105
  • 131
Ramon
  • 8,202
  • 4
  • 33
  • 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
  • 442,112
  • 142
  • 972
  • 1,088
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
  • 30,738
  • 21
  • 105
  • 131
dar7yl
  • 3,727
  • 25
  • 20
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
  • 30,738
  • 21
  • 105
  • 131
Aishwar
  • 9,284
  • 10
  • 59
  • 80