Oneof field should be serialized even it's equal to default. (#3153)

diff --git a/php/tests/encode_decode_test.php b/php/tests/encode_decode_test.php
index 288df56..b4cfed4 100644
--- a/php/tests/encode_decode_test.php
+++ b/php/tests/encode_decode_test.php
@@ -88,6 +88,13 @@
         $n = new TestMessage();
         $n->mergeFromString($data);
         $this->assertSame(1, $n->getOneofMessage()->getA());
+
+        // Encode default value
+        $m->setOneofEnum(TestEnum::ZERO);
+        $data = $m->serializeToString();
+        $n = new TestMessage();
+        $n->mergeFromString($data);
+        $this->assertSame("oneof_enum", $n->getMyOneof());
     }
 
     public function testPackedEncode()