Come dichiarare la funzione statica con array e passare successivamente in un'altra classe?
class A
{
//static
public static $data = ['Los Angeles', 'New York', 'Washington'];
//const
const DATA = ['Los Angeles', 'New York', 'Washington'];
}
Quale approccio è migliore e perché? Forse per string o int è meglio un altro approccio? Quale? Non voglio cambiare questi valori.
Vorrei usare questo array in un'altra classe:
class B
{
public function method()
{
$data1 = A::$data;
$data2 = A::DATA;
}
}
Ma questo è l'approccio corretto nella programmazione orientata agli oggetti?
In questo caso, la classe B non sa che usa la classe A, quindi forse la classe A dovrebbe essere passata nel metodo, ma forse questo approccio non si applica quando si tratta di metodi statici?