From 11433f78a72daf5d547547ab132de25ac79b9b0b Mon Sep 17 00:00:00 2001 From: Stanley Cheung Date: Thu, 22 Sep 2016 17:09:32 -0700 Subject: PHP: support 7.0 on PHP implementation (#2162) * PHP: support 7.0 * Also fix in test_util.php --- php/src/Google/Protobuf/Internal/Message.php | 45 +++++++++++++++------------- 1 file changed, 24 insertions(+), 21 deletions(-) (limited to 'php/src') diff --git a/php/src/Google/Protobuf/Internal/Message.php b/php/src/Google/Protobuf/Internal/Message.php index a8de6a11..7bdc6a8c 100644 --- a/php/src/Google/Protobuf/Internal/Message.php +++ b/php/src/Google/Protobuf/Internal/Message.php @@ -81,41 +81,44 @@ class Message switch ($value_field->getType()) { case GPBType::MESSAGE: case GPBType::GROUP: - $this->$setter( - new MapField( - $key_field->getType(), - $value_field->getType(), - $value_field->getMessageType()->getClass())); + $map_field = new MapField( + $key_field->getType(), + $value_field->getType(), + $value_field->getMessageType()->getClass()); + $this->$setter($map_field); break; case GPBType::ENUM: - $this->$setter( - new MapField( - $key_field->getType(), - $value_field->getType(), - $value_field->getEnumType()->getClass())); + $map_field = new MapField( + $key_field->getType(), + $value_field->getType(), + $value_field->getEnumType()->getClass()); + $this->$setter($map_field); break; default: - $this->$setter(new MapField($key_field->getType(), - $value_field->getType())); + $map_field = new MapField( + $key_field->getType(), + $value_field->getType()); + $this->$setter($map_field); break; } } else if ($field->getLabel() === GPBLabel::REPEATED) { switch ($field->getType()) { case GPBType::MESSAGE: case GPBType::GROUP: - $this->$setter( - new RepeatedField( - $field->getType(), - $field->getMessageType()->getClass())); + $repeated_field = new RepeatedField( + $field->getType(), + $field->getMessageType()->getClass()); + $this->$setter($repeated_field); break; case GPBType::ENUM: - $this->$setter( - new RepeatedField( - $field->getType(), - $field->getEnumType()->getClass())); + $repeated_field = new RepeatedField( + $field->getType(), + $field->getEnumType()->getClass()); + $this->$setter($repeated_field); break; default: - $this->$setter(new RepeatedField($field->getType())); + $repeated_field = new RepeatedField($field->getType()); + $this->$setter($repeated_field); break; } } else if ($field->getOneofIndex() !== -1) { -- cgit v1.2.3