1. Go to this page and download the library: Download seanja/stats-can-api library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
seanja / stats-can-api example snippets
use GuzzleHttp\Client as GuzzleClient;
use GuzzleHttp\RequestOptions;
use SeanJA\StatsCanAPI\Client;
use SeanJA\StatsCanAPI\ValueObjects\Coordinate;
use SeanJA\StatsCanAPI\ValueObjects\Dimensions\Member;
use SeanJA\StatsCanAPI\ValueObjects\Enums\GeographyEnum;
use SeanJA\StatsCanAPI\ValueObjects\Enums\ProductIdEnum;
use Symfony\Component\Cache\Adapter\FilesystemAdapter;
ent
)
{
}
public function getLatestGasPriceForArea(GeographyEnum $geography): int
{
$productId = ProductIdEnum::MONTHLY_AVERAGE_RETAIL_PRICES_FOR_GASOLINE_AND_FUEL_OIL_BY_GEOGRAPHY;
// get the data for this specific product
$data = $this->client->getCubeMetadata($productId->value);
// get the area that was specified
$areaMemberDimensionPosition = $data->dimension[0]->dimensionPositionId;
$areaMember = null;
/** @var Member $member */
foreach($data->dimension[0]->member as $member){
if($member->memberId === $geography->value){
$areaMember = $member->memberId;
break;
}
}
// get the second coordinate, which is fuel type:
$fuelTypeDimensionPosition = $data->dimension[1]->dimensionPositionId;
$fuelTypeMember = null;
foreach($data->dimension[1]->member as $member){
if($member->memberNameEn === 'Regular unleaded gasoline at self service filling stations'){
$fuelTypeMember = $member->memberId;
break;
}
}
//setup the coordinate you want to query for
$coordinate = new Coordinate();
// the first dimension is the area
$coordinate->setDimension($areaMemberDimensionPosition, $areaMember);
$coordinate->setDimension($fuelTypeDimensionPosition, $fuelTypeMember);
$data2 = $this->client->getDataFromCubePidCoordinateAndLatestNPeriods(
$productId->value,
$coordinate,
// only get the latest row
1
);
return $data2->vectorDataPoints[0]->value;
}
}
$service = new StatsCanLatestAverageGasPriceService($client);
echo $service->getLatestGasPriceForArea(GeographyEnum::CANADA);
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.