beleaf / sustainable-web-design
一个库,用于使用可持续网络设计模型估算使用数字服务产生的碳排放
Requires
- php: >=8
Requires (Dev)
README
一个库,用于使用可持续网络设计模型来估算使用数字服务产生的碳排放。
安装
首先,您需要将库添加到您的 composer.json
composer require beleaf/sustainable-web-design
添加库后,使用 composer update
更新您的包或使用 composer install
安装它们。
使用方法
require_once './vendor/autoload.php';
use \Beleaf\SustainableWebDesign\SustainableWebDesign as SWD;
$results = SWD::url('https://beleaf.au');
print_r($results);
使用不同的模型
您可以通过提供模型编号作为第三个参数来指示SWD测试方法使用不同的模型来估算排放。
require_once './vendor/autoload.php';
use \Beleaf\SustainableWebDesign\SustainableWebDesign as SWD;
$results = SWD::url('https://beleaf.au', [], 3);
print_r($results);
或者,您可以直接在模型上访问测试方法,以避免使用SWD包装器。
require_once './vendor/autoload.php';
use \Beleaf\SustainableWebDesign\Model\V3 as SWDv3;
$results = SWDv3::url('https://beleaf.au', []);
print_r($results);
SWD包装器和模型方法
SWD包装器和每个SWD模型公开了3个可以调用来估算排放的方法。模型可以选择公开更多方法,但这些方法并不在每个模型中都是一致的。
每个方法至少接受2个参数,SWD包装器方法接受一个第三个(整数)参数,表示要使用的模型。SWD包装器默认为最新发布的模型。
每个模型都有不同的估算排放的公式,每个模型都有不同的参数可以被重写。如果您知道数据中心、网络或用户设备所在电网的碳强度,您应该调整电网强度来估算该段落的运营排放。这将为您提供更符合您的网站如何运营和使用的更准确的结果。
SWD::test
测试将返回提供URL的页面视图的估算排放。测试至少需要一个要测试的URL作为第一个参数,并接受一个第二个参数,允许配置测试,以及提供给公式的值。
测试方法将对GPSAPI进行调用以计算传输的字节数。GPSAPI默认为测试桌面屏幕大小,但可以更改为移动端。此外,可以通过提供密钥来允许更频繁的测试。密钥可以从Google 获取。
测试方法还将调用绿色网络基金会API以检索与提供的URL相关的能源和排放值。
require_once './vendor/autoload.php';
use \Beleaf\SustainableWebDesign\SustainableWebDesign as SWD;
$results = SWD::url('https://beleaf.au', [
'gpsapi' => [
'strategy' => 'mobile',
'key' => 'xxx',
],
]);
print_r($results);
响应
测试方法返回一个由Model::breakdown方法生成的数组。有关结构,请参阅SWD::breakdown response。
SWD::breakdown
Breakdown返回一个包含估算排放、评级(如果模型上有 - 从V3开始)、模型中每个段落的估算排放以及公式中使用的变量的数组。
SWD::breakdown接受两个参数,一个表示传输的字节数的int|float,以及一个用于配置公式中使用的值的参数数组。
require_once './vendor/autoload.php';
use \Beleaf\SustainableWebDesign\SustainableWebDesign as SWD;
$results = SWD::breakdown(153735);
print_r($results);
响应
注意:响应的结构因模型而异。
Array
(
[gCO2e] => 0.024419489257414
[rating] => A+
[segments] => Array
(
[operationalTotal] => 0.014765805164566
[embodiedTotal] => 0.010680135888979
[operational] => Array
(
[dataCentre] => 0.0041861818765523
[network] => 0.0044906314675743
[userDevice] => 0.0060889918204397
)
[embodied] => Array
(
[dataCentre] => 0.00084875252097845
[network] => 0.004173033228144
[userDevice] => 0.0056583501398563
)
)
[variables] => Array
(
[operationalEnergyIntensity] => 531.597
[embodiedEnergyIntensity] => 494
[greenHostingFactor] => 0.2452
[dataCacheRatio] => 0
[returnVisitorRatio] => 0
[gpsapi] => Array
(
[strategy] => desktop
[key] =>
)
[bytes] => 153735
)
)
SWD::gCO2e
gCO2e返回一个估算排放的float。
gCO2e接受两个参数,一个表示传输的字节数的int|float,以及一个用于配置公式中使用的值的参数数组。
require_once './vendor/autoload.php';
use \Beleaf\SustainableWebDesign\SustainableWebDesign as SWD;
$results = SWD::gCO2e(153735);
print_r($results);
响应
0.024419489257414
许可证
Sustainable Web Design模型为PHP许可在MIT许可证下 - 请参阅LICENSE文件以获取详细信息。