<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
batteryincluded / batteryincluded-php-sdk example snippets
use BatteryIncludedSdk\Dto\ProductBaseDto;
class ProductDto extends ProductBaseDto
{
private ?string $keywords = null;
public function setKeywords(string $keywords): void
{
$this->keywords = $keywords;
}
private function getKeywords(): ?string
{
return $this->keywords;
}
public function jsonSerialize(): array
{
$jsonDto = [
'keywords' => $this->getKeywords(),
];
return array_merge_recursive(
parent::jsonSerialize(),
['_' . $this->getType() => array_filter($jsonDto, static fn($value) => $value !== null)]
);
}
}
use BatteryIncludedSdk\Client\ApiClient;
use BatteryIncludedSdk\Client\CurlHttpClient;
use BatteryIncludedSdk\Service\SyncService;
$product = new ProductDto('1');
$product->setName('iPhone 15 Pro');
$product->setOrdernumber('AP-001-128GB');
$product->setPrice(1199.00);
$product->setInstock(42);
$product->setKeywords('smartphone apple ios');
$apiClient = new ApiClient(
new CurlHttpClient(),
'https://api.battery
use BatteryIncludedSdk\Client\ApiClient;
use BatteryIncludedSdk\Client\CurlHttpClient;
use BatteryIncludedSdk\Dto\BlogBaseDto;
use BatteryIncludedSdk\Dto\ProductBaseDto;
use BatteryIncludedSdk\Service\SyncService;
$product = new ProductBaseDto('1');
$product->setName('iPhone 15 Pro');
$product->setPrice(1199.00);
$blog = new BlogBaseDto('1');
$blog->setTitle('Top 5 Smartphones 2024');
$blog->setAuthor('Jane Doe');
$blog->setPublishedAt('2024-06-01');
$apiClient = new ApiClient(
new CurlHttpClient(),
'https://api.battery
use BatteryIncludedSdk\Shop\BrowseSearchStruct;
use BatteryIncludedSdk\Shop\BrowseService;
$searchStruct = new BrowseSearchStruct();
$searchStruct->setQuery('iPhone');
$browseService = new BrowseService($apiClient);
$result = $browseService->browse($searchStruct); // returns products AND blogs
// Only products
$searchStruct = new BrowseSearchStruct();
$searchStruct->setQuery('iPhone');
$searchStruct->addFilter('type', 'PRODUCT');
// Only blog posts
$searchStruct = new BrowseSearchStruct();
$searchStruct->setQuery('iPhone');
$searchStruct->addFilter('type', 'BLOG');