NBT в PHP позволяет вам преобразовать данные NBT в типы данных PHP, чтобы легко использовать в рамках программы PHP.
Поскольку эта программа преобразует данные NBT в собственные типы данных PHP, в настоящее время нет способа преобразовать данные обратно в данные NBT, поскольку PHP имеет меньше типов данных, чем NBT.
Преимущество заключается в том, что не иметь преобразователя PHP в NBT, эта библиотека очень легкая и очень хорошо работает в приложениях, где необходима функциональность только для чтения, например, чтение API или файла.
Преимущество подхода конвертации в типы данных PHP заключается в том, что его очень легко отобразить и считать вывод с помощью print_r .
Эта библиотека может быть загружена с помощью композитора. Например, вы можете добавить следующее в свой файл composer.json .
{
"require" : {
"brandon/nbt" : " * "
}
} Рекомендуется заменить * с ограничением версии.
Есть несколько способов загрузить непосредственно с GitHub, единственный необходимый файл - NBT.php .
NBT.php через https://raw.githubusercontent.com/brandonxlf/nbt.php/master/nbt.phpgit clone https://github.com/BrandonXLF/NBT.phpПосле загрузки, чтобы использовать библиотеку, которую вы бы использовали:
require ' NBT.php ' ;На данный момент все функции в этой библиотеке как статические, то есть нет необходимости создавать новый объект типа NBT, но вы можете.
Есть 3 основные функции, к которым вы должны получить доступ, NBT::readFile , NBT::readString и NBT::readStream .
NBT :: ReadFile используется для чтения данных NBT из файла.
NBT :: readFile ( string $ filename , string $ wrapper = ' compress.zlib:// ' ) : arraycompress.zlib:// . Измените обертку на file:// Чтобы прочитать несжатый файл. Массив с данными NBT, преобразованный в PHP.
NBT :: ReadString используется для чтения данных NBT из строки.
NBT :: readString ( string $ str ) : arraygzdecode для сначала декомпрессии строки. Массив с данными NBT, преобразованный в PHP.
NBT :: Readstream используется для чтения данных NBT из потока файла.
NBT :: readStream ( resource $ stream ) : arrayМассив с данными NBT, преобразованный в PHP.
NBT :: ReadTag используется для чтения тега NBT из потока файла.
NBT :: readTag ( int $ type , resource $ stream ) : mixed Данные NBT считываются как данные PHP, тип возврата зависит от параметра $type .
Тесты для этого скрипта можно найти в файле php tests/test.php . Вы можете запустить php tests/test.php , чтобы проверить этот сценарий.