protocolbuffers/protobuf

PHP: better debug info for Message objects in protobuf C-extension

Open

#14.872 geöffnet am 28. Nov. 2023

Auf GitHub ansehen
 (8 Kommentare) (3 Reaktionen) (0 zugewiesene Personen)C++ (16.128 Forks)batch import
help wantedphp

Repository-Metriken

Stars
 (71.223 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 2T 11h) (185 gemergte PRs in 30 T)

Beschreibung

See https://github.com/protocolbuffers/protobuf/issues/12714 and https://github.com/protocolbuffers/protobuf/pull/12718, which resolved this problem for the native library.

When the protobuf c-extension is enabled for PHP, calling var_dump on a protobuf message object does not output any useful information:

// Calling var_dump on a Protobuf message (extension enabled):
php > $timestamp = new Google\Protobuf\Timestamp();
php > $timestamp->setSeconds(12345);
php > var_dump($timestamp);
object(Google\Protobuf\Timestamp)#1 (0) {
}

Ideally this would output something like this:

object(Google\Protobuf\Timestamp)#12 (1) {
  ["seconds"]=>
  int(12345)
}

Contributor Guide