PHP code example of xima / t3api-cache
1. Go to this page and download the library: Download xima/t3api-cache 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/ */
xima / t3api-cache example snippets
use Xima\T3ApiCache\Annotation\ApiCache;
/**
* @ApiResource(
* collectionOperations={
* "get": {
* "path": "/news"
* }
* }
* )
* @ApiCache
*/
class News extends AbstractEntity
{
}
use SourceBroker\T3api\Annotation\ApiFilter;
use SourceBroker\T3api\Filter\SearchFilter;
use Xima\T3ApiCache\Annotation\ApiCache;
/**
* ...
* @ApiFilter(SearchFilter::class, properties={"title": "partial", "teaser": "partial"}, arguments={"parameterName": "search"})
* @ApiCache(parametersToIgnore={"search"})
*/
class ExampleResource extends AbstractEntity
{
}
use Xima\T3ApiCache\Annotation\ApiCache;
/**
* ...
* @ApiCache(lifetime=3600) // Cache lifetime set to 1 hour
*/
class ExampleResource extends AbstractEntity
{
}
use Xima\T3ApiCache\Annotation\ApiCache;
/**
* ...
* @ApiCache(disableTableNameTag=true)
*/
class ExampleResource extends AbstractEntity
{
}
use SourceBroker\T3api\Annotation\ApiFilter;
use SourceBroker\T3api\Filter\OrderFilter;
use Xima\T3ApiCache\Annotation\ApiCache;
use Xima\T3ApiCache\Annotation\ApiCacheRoundDatetime;
/**
* @ApiResource(
* collectionOperations={
* "get": {
* "path": "/event"
* }
* }
* )
* @ApiFilter(OrderFilter::class, properties={"date"}, arguments={"parameterName": "date"})
* @ApiCache
* @ApiCacheRoundDatetime(parameterName="date", precision="hour")
*/
class Event extends AbstractEntity
{
protected \DateTime $date;
}
use Xima\T3ApiCache\Annotation\ApiCache;
use Xima\T3ApiCache\Annotation\ApiCacheRoundDatetime;
/**
* ...
* @ApiCache
* @ApiCacheRoundDatetime(parameterName="startDate", precision="day")
* @ApiCacheRoundDatetime(parameterName="endDate", precision="hour", direction="ceil")
*/
class Event extends AbstractEntity
{
protected \DateTime $startDate;
protected \DateTime $endDate;
}