for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace KaLLoSz\Twig\Extension\Cache;
use Symfony\Component\Cache\Adapter\AdapterInterface;
/**
* Class SymfonyCacheBridge
* @package KaLLoSz\Twig\Extension\Cache
*
* @author Patryk Kala <[email protected]>
*/
class SymfonyCacheBridge implements CacheInterface
{
* @var AdapterInterface
private $adapter;
* @param AdapterInterface $adapter
public function __construct(AdapterInterface $adapter)
$this->adapter = $adapter;
}
* {@inheritdoc}
public function get($id)
$item = $this->adapter->getItem($id);
if ($item->isHit()) {
return $item->get();
return false;
public function has($id)
return $item->isHit();
public function save($id, $data, $lifeTime = 0)
$item->set($data);
if ($lifeTime > 0) {
$item->expiresAfter($lifeTime);
return $this->adapter->save($item);
public function delete($id)
return $this->adapter->deleteItem($item);
$item
object<Symfony\Component\Cache\CacheItem>
string
It seems like the type of the argument is not accepted by the function/method which you are calling.
In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.
We suggest to add an explicit type cast like in the following example:
function acceptsInteger($int) { } $x = '123'; // string "123" // Instead of acceptsInteger($x); // we recommend to use acceptsInteger((integer) $x);
It seems like the type of the argument is not accepted by the function/method which you are calling.
In some cases, in particular if PHP’s automatic type-juggling kicks in this might be fine. In other cases, however this might be a bug.
We suggest to add an explicit type cast like in the following example: