src/ApiBundle/Api/Resource/ResourceProxy.php
(开头部分) 1KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<?php
namespace ApiBundle\Api\Resource;
class ResourceProxy
{
private $resource;
private $fieldFilters;
private $fieldFilterFactory;
public function __construct(FieldFilterFactory $factory, AbstractResource $resource)
{
$this->resource = $resource;
$this->fieldFilterFactory = $factory;
}
public function __call($method, $arguments)
{
$result = call_user_func_array(array($this->resource, $method), $arguments);
if (in_array($method, $this->resource->supportMethods()) && $this->getFieldFilter($method)) {
$this->filterResult($method, $result);
}
return $result;
}
private function getFieldFilter($method)
{
if (empty($this->fieldFilters[$method])) {
$this->fieldFilters[$method] = $this->fieldFilterFactory->createFilter($this->resource, $method);
}
return $this->fieldFilters[$method];
}
public function getResource()
{
return $this->resource;
}
private function filterResult($method, &$result)
{
if ($method == AbstractResource::METHOD_SEARCH) {
$this->getFieldFilter($method)->filters($result);
} else {
$this->getFieldFilter($method)->filter($result);
}
}
}
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。