for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Bankiru\Api\Doctrine\Rpc;
use Bankiru\Api\Doctrine\EntityDataCacheInterface;
use Bankiru\Api\Doctrine\Mapping\ApiMetadata;
use ScayTrase\Api\Rpc\RpcClientInterface;
final class CachedFinder implements Finder
{
/** @var Finder */
private $delegate;
/** @var EntityDataCacheInterface */
private $cache;
/**
* CachedFinder constructor.
*
* @param Finder $delegate
* @param EntityDataCacheInterface $cache
*/
public function __construct(Finder $delegate, EntityDataCacheInterface $cache)
$this->delegate = $delegate;
$this->cache = $cache;
}
/** {@inheritdoc} */
public function find(array $identifier)
$body = $this->cache->get($identifier);
if (null !== $body) {
return $body;
$body = $this->delegate->find($identifier);
$this->cache->set($body, $identifier);
$body
object<stdClass>
array
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);
public function getClient()
return $this->delegate->getClient();
public function getMetadata()
return $this->delegate->getMetadata();
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: