public function test_string_rep() { $writers_schema_json = '"null"'; $writers_schema = AvroSchema::parse($writers_schema_json); $datum_writer = new AvroIODatumWriter($writers_schema); $strio = new AvroStringIO(); $this->assertEquals('', $strio->string()); $dw = new AvroDataIOWriter($strio, $datum_writer, $writers_schema_json); $dw->close(); $this->assertEquals(57, strlen($strio->string()), AvroDebug::ascii_string($strio->string())); $read_strio = new AvroStringIO($strio->string()); $datum_reader = new AvroIODatumReader(); $dr = new AvroDataIOReader($read_strio, $datum_reader); $read_data = $dr->data(); $datum_count = count($read_data); $this->assertEquals(0, $datum_count); }
// Create a string io object. $io = new AvroStringIO(); // Create a datum writer object $writers_schema = AvroSchema::parse($writers_schema_json); $writer = new AvroIODatumWriter($writers_schema); $data_writer = new AvroDataIOWriter($io, $writer, $writers_schema); foreach ($data as $datum) { $data_writer->append($datum); } $data_writer->close(); $binary_string = $io->string(); // Load the string data string $read_io = new AvroStringIO($binary_string); $data_reader = new AvroDataIOReader($read_io, new AvroIODatumReader()); echo "from binary string:\n"; foreach ($data_reader->data() as $datum) { echo var_export($datum, true) . "\n"; } /** Output from file: array ( 'member_id' => 1392, 'member_name' => 'Jose', ) array ( 'member_id' => 1642, 'member_name' => 'Maria', ) from binary string: array ( 'member_id' => 1392,