树种数据库

0.3.6 2022-02-18 14:47 UTC

README

本项目的目标是提供一个简单的API,用于计算英国本土树种的数据。

提供的PHP工具可以用来获取多种树种的数据。它可以计算出树木的碳汇速率。这些数据是森林一个项目的基础数据。

安装

使用包管理器 composer 进行安装。

composer require cowshedworks/trees

使用树数据API

树数据工厂将返回一个树数据对象,可用于计算有关树木的各种信息。

use CowshedWorks\Trees\TreeDataFactory;

$factory = new TreeDataFactory();
print_r($factory->getTrees());

// prints ['alder', 'birch', 'oak']

要实例化一个树数据对象,你需要向工厂传递参数,它需要'circumference'(胸径)和'height'(高度)来构建对象。你还可以传递一个观测日期'YYYY-MM-DD'。参数可以作为数组在构建方法中传递,或者链式调用构建之前传递。例如

$treeData = $factory->build('alder', [
  'circumference' => '22in',
  'height'   => '15ft'
]);

$treeData = $factory->circumference('22in')->height('15ft')->build('alder');

它将设置树对象并从胸径和高度计算一些信息,它还将估算出大约的年龄。如果提供了观测日期,它将尝试将数据外推到当前日期。

echo $treeData->getPopularName();
// Alder
print_r($treeData->getCommonNames());
// Array
// (
//     [0] => Alder
//     [1] => Common Alder
//     [2] => Black Alder
//     [3] => European Alder
// )
print_r($treeData->getScientificName());
// Array
// (
//     [0] => Alnus glutinosa
// )
echo $treeData->getEstimatedAge();
// 10 years
echo $treeData->getCarbonWeight();
// 36.3 kg
echo $treeData->getCO2SequestrationPerYear();
// 13.31 kg
echo $treeData->getCO2SequestrationToDate();
// 133.09

贡献

欢迎Pull请求。对于重大更改,请先创建一个问题来讨论您想要更改的内容。

请确保适当更新测试。

许可证

MIT