What Does This Mean in PHP -> or =>
I see these in PHP all the time but I don't have a clue as to what they actually mean. What does
-> do and what does
=> do. And I'm not talking about the operators. They're something else, but nobody seems to know...
The double arrow operator,
=>, is used as an access mechanism for arrays. This means that what is on the left side of it will have a corresponding value of what is on the right side of it in array context. This can be used to set values of any acceptable type into a corresponding index of an array. The index can be associative (string based) or numeric.
$myArray = array( 0 => 'Big', 1 => 'Small', 2 => 'Up', 3 => 'Down' );
The object operator,
->, is used in object scope to access methods and properties of an object. It’s meaning is to say that what is on the right of the operator is a member of the object instantiated into the variable on the left side of the operator. Instantiated is the key term here.
// Create a new instance of MyObject into $obj $obj = new MyObject(); // Set a property in the $obj object called thisProperty $obj->thisProperty = 'Fred'; // Call a method of the $obj object named getProperty $obj->getProperty();
Read more... Read less...
-> is used to call a method on the object of a class
=> is used to assign values to the keys of an array
$ages = array("Peter"=>32, "Quagmire"=>30, "Joe"=>34, 1=>2);
calls/sets object variables. Ex:
$obj = new StdClass; $obj->foo = 'bar'; var_dump($obj);
=> Sets key/value pairs for arrays. Ex:
$array = array( 'foo' => 'bar' ); var_dump($array);