Why should I need "&"?

oop, php

Solution

It is useless here since the example is getting a reference to a constant, but references do have their uses when you want to "watch" a value that might change, and you want your variable to change with it.

Problem

See example on the web about the PHP Factory Pattern. In the line `$kind =& Vehicle::category($wheel);`, why should I to use `&`? The code: ``` <?php class Vehicle { function category($wheel = 0) { if ($wheel == 2) { return "Motor"; } elseif($wheel == 4) { return "Car"; } } } class Spec { var $wheel = ''; function Spec($wheel) { $this->wheel = $wheel; } function name() { $wheel = $this->wheel; return Vehicle::category($wheel); } function brand() { $wheel = $this->wheel; $kind =& Vehicle::category($wheel); if ($kind == "Motor") { return array('Harley','Honda'); } elseif($kind = "Car") { return array('Nisan','Opel'); } } } $kind = new Spec(2); echo "Kind: ".$kind->name(); echo "<br>"; echo "Brand: " . implode(",", $kind->brand()); ?> ```

Original source

Related problems