google / flatbuffers
FlatBuffers for PHP
Requires
- php: >=5.4
- dev-master
- v24.3.25
- v24.3.7
- v24.3.6
- v23.5.26
- v23.5.9
- v23.5.8
- v23.3.3
- v23.1.21
- v23.1.20
- v23.1.4
- v22.12.6
- v22.11.23
- v22.11.22
- v22.10.26
- v22.10.25
- v22.9.29
- v22.9.24
- v2.0.8
- v2.0.7
- v2.0.6
- v2.0.5
- v2.0.0
- v1.12.1
- v1.12.0
- v1.11.0
- v1.10.0
- v1.9.0
- v1.8.0
- v1.7.1
- v1.7.0
- v1.6.0
- v1.5.0
- v1.4.0
- v1.3.0
- dev-ts-js-up-deps
- dev-dev
This package is not auto-updated.
Last update: 2024-09-14 18:58:26 UTC
README
FlatBuffers 是一个跨平台的序列化库,旨在实现最大的内存效率。它允许您直接访问序列化数据,而无需先解析/解包它,同时仍然具有出色的前后兼容性。
快速入门
-
构建 flatbuffers 编译器(
flatc
)使用
cmake
为您的平台创建构建文件,然后进行编译(Linux 示例)。cmake -G "Unix Makefiles" make -j
-
定义您的 flatbuffer 架构(
.fbs
)编写 架构 以定义您想要序列化的数据。请参阅 monster.fbs 中的示例。
-
为您的语言生成代码
使用
flatc
编译器将您的架构转换为特定语言的代码./flatc --cpp --rust monster.fbs
这将生成
monster_generated.h
和monster_generated.rs
文件。 -
序列化数据
使用生成的代码以及
FlatBufferBuilder
来构造您的序列化缓冲区。(C++
示例) -
传输/存储/保存缓冲区
根据需要使用您的序列化缓冲区。发送给某人,保存以供以后使用等...
-
读取数据
使用生成的访问器从序列化缓冲区中读取数据。
它不需要是相同的语言/架构版本,FlatBuffers 确保数据可以在不同语言和架构版本之间读取。请参阅
Rust
示例 读取由C++
编写的数据。
文档
访问我们的 着陆页 浏览我们的文档。
支持的操作系统
- Windows
- macOS
- Linux
- Android
- 以及任何拥有最新 C++ 编译器(C++ 11 及以上)的系统
支持的编程语言
许多流行语言的代码生成和运行时库。
- C
- C++ - snapcraft.io
- C# - nuget.org
- Dart - pub.dev
- Go - go.dev
- Java - Maven
- JavaScript - NPM
- Kotlin
- Lobster
- Lua
- PHP
- Python - PyPI
- Rust - crates.io
- Swift - swiftpackageindex
- TypeScript - NPM
- Nim
版本
FlatBuffers 不遵循传统的 SemVer 版本控制(请参阅 理由),而是使用发布日期的格式。
贡献
- 请访问FlatBuffers 问题跟踪器提交问题。
- 有关FlatBuffers的任何问题,请在stackoverflow.com上使用
flatbuffers
标签。
要为该项目做出贡献,请查看CONTRIBUTING。
社区
安全
有关漏洞报告,请参阅我们的安全策略。
许可
FlatBuffers采用Apache License,版本2.0许可。有关完整许可文本,请参阅LICENSE。