Position actuelle: Accueil> Derniers articles> Comment utiliser le format de données Protobuf pour un échange de données efficace dans un environnement PHP

Comment utiliser le format de données Protobuf pour un échange de données efficace dans un environnement PHP

gitbox 2025-06-17

Il est très courant d'utiliser le format de données Protobuf dans un environnement PHP. Protobuf (Tampons de protocole) est un protocole efficace de sérialisation des données et de communication qui peut échanger des données sur différents langages de programmation, en particulier adaptés au traitement des données dans PHP. Dans cet article, nous présenterons en détail comment utiliser le format de données Protobuf dans PHP et effectuer une configuration et des opérations correspondantes.

Installation et configuration

Tout d'abord, nous devons installer l'extension Protobuf pour permettre à PHP de prendre en charge l'analyse et la génération des données au format Protobuf. Utilisez la commande suivante pour installer l'extension:

 $ pecl install protobuf

Une fois l'installation terminée, vous devez activer l'extension Protobuf dans le fichier de configuration de PHP Php.ini. Trouvez le fichier php.ini et ajoutez la configuration suivante:

 extension=protobuf.so

Une fois la configuration terminée, redémarrez le service PHP pour que les modifications prennent effet.

Définir le message Protobuf

Avant de commencer à utiliser Protobuf, nous devons définir la structure du message. Protobuf utilise des fichiers .proto pour définir le format de message, puis génère du code PHP via la compilation.

Créez un fichier nommé Example.proto dans le projet et ajoutez ce qui suit:

 
syntax = "proto3";
message Person {
  string name = 1;
  int32 age = 2;
  repeated string hobbies = 3;
}
        

Dans cet exemple, nous définissons un message de personne contenant le nom, l'âge et les passe-temps des champs. Le nombre après le champ est l'identifiant unique du champ dans les données binaires. Le mot-clé répété indique que le champ est de type de tableau.

Générer du code PHP

Après avoir défini la structure des messages Protobuf, utilisez le compilateur Protobuf pour générer du code PHP. Exécutez la commande suivante dans le terminal:

 $ protoc --php_out=. example.proto

Après avoir exécuté cette commande, vous générerez un fichier d'exemple.pb.php dans le répertoire actuel, qui contient le code PHP généré sur l'exemple.proto.

Utilisation du message Protobuf

Maintenant, nous pouvons utiliser les messages Protobuf dans PHP. Tout d'abord, nous devons introduire le fichier de code PHP généré. Voici comment introduire ce fichier dans un script PHP:

 require_once 'example.pb.php';

Ensuite, vous pouvez créer un objet de personne et définir sa valeur de champ:

 
$person = new Person();
$person->setName("John Doe");
$person->setAge(30);
$person->setHobbies(["reading", "hiking"]);
        

Pour sérialiser les objets de personne aux données binaires au format Protobuf, vous pouvez utiliser la méthode SerializetoString:

 $data = $person->serializeToString();

Analyser un objet de personne à partir de données binaires au format Protobuf et utiliser la méthode parsofromstring:

 
$person = new Person();
$person->parseFromString($data);
        

Enfin, vous pouvez accéder aux valeurs du champ de l'objet de personne:

 
echo $person->getName(); // Sortir: John Doe
echo $person->getAge();  // Sortir: 30
echo implode(", ", $person->getHobbies()); // Sortir: reading, hiking
        

Résumer

Grâce à cet article, vous avez appris à utiliser le format de données Protobuf dans un environnement PHP. Nous avons commencé par installer et configurer l'extension Protobuf, nous avons ensuite défini la structure du message Protobuf et démontré comment utiliser Protobuf en PHP pour la sérialisation des données et la désérialisation. Protobuf est un format de données efficace qui peut aider les développeurs à échanger rapidement et efficacement les données entre différentes langues.