<?php
class Foo {
protected $box;
public function setBox(array $box)
{
if (count($box) !== 4) {
throw new InvalidArgumentException('The "$box" parameter must be an array with 4 values.');
}
var_dump($this->box);exit;
// Breaks FPM and gives a 502 due to connection reset by peers
list($lat1, $lon1, $lat2, $lon2) = $this->box = $box;
// Works perfectly fine
// $this->box = $box;
// list($lat1, $lon1, $lat2, $lon2) = $this->box;
// Calculate the central point of the box for distances
$this->lat = (float) $lat1 + (($lat2 - $lat1) / 2);
$this->lon = (float) $lon1 + (($lon2 - $lon1) / 2);
return $this;
}
public function process()
{
if ($this->box) {
list($lat1, $lon1, $lat2, $lon2) = $this->box;
}
echo "Success";
}
}
$foo = new Foo;
$foo->setBox($r = explode(',', '40.688235,-74.013718,40.756427,-73.958770'));
$foo->process();