<?php
ini_set('display_errors', true);
error_reporting(-1);
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.');
}
// 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(explode(',', '40.688235,-74.013718,40.756427,-73.958770'));
$foo->process();
Deprecated: Creation of dynamic property Foo::$lat is deprecated in /in/ohrsb on line 23
Deprecated: Creation of dynamic property Foo::$lon is deprecated in /in/ohrsb on line 24
Success
Parse error: parse error, unexpected T_ARRAY, expecting '&' or T_VARIABLE in /in/ohrsb on line 9
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/ohrsb on line 7
Process exited with code 255.
Parse error: parse error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /in/ohrsb on line 7
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in /in/ohrsb on line 7
Process exited with code 255.