Find all WHERE une condition

@param string $method
@param array $arguments
@return array
330662
private function callFindAllBy(string $method, array $arguments)
    {
        $whereByWithUpper = lcfirst(substr($method, 9, mb_strlen($method)));
        $whereBy = Str::convertCamelCaseToSnakeCase($whereByWithUpper);

        return $this->where($whereBy, '=', $arguments[0])->findAll();
    }
1212473
protected function getLocation($method, $database = null, array $arguments = null)
    {
        $location = "http://{$this->server}/$method";

        if ($database) {
            $location .= '/' . rawurlencode($database);
        }

        if ($arguments) {
            $location .= '/' . implode('/', array_map('rawurlencode', $arguments));
        }

        return $location;
    }
1175294
protected function get($method, $arguments)
    {
        $lastArgument = end($arguments);
        reset($arguments);
        
        // lock模式下，因为需要借助mysql的锁，不走cache
        if (is_array($lastArgument) && isset($lastArgument['lock']) && true === $lastArgument['lock']) {
            $row = $this->callRealDao($method, $arguments);
            $this->unserialize($row);

            return $row;
        }

        if ($this->arrayStorage) {
            $key = $this->getCacheKey($this->dao, $method, $arguments);
            if (!empty($this->arrayStorage[$key])) {
                return $this->arrayStorage[$key];
            }
        }

        $strategy = $this->buildCacheStrategy();
        if ($strategy) {
            $cache = $strategy->beforeQuery($this->dao, $method, $arguments);
            // 命中 cache, 直接返回 cache 数据
            if (false !== $cache) {
                return $cache;
            }
        }

        $row = $this->callRealDao($method, $arguments);
        $this->unserialize($row);

        // 将结果缓存至 ArrayStorage
        $this->arrayStorage && ($this->arrayStorage[$this->getCacheKey($this->dao, $method, $arguments)] = $row);

        if ($strategy) {
            $strategy->afterQuery($this->dao, $method, $arguments, $row);
        }

        return $row;
    }
208056
protected function parseNegatedCondition( $type, $arguments ) {
		$negated_type = substr( $type, strlen( static::NEGATE_CONDITION_PREFIX ) );
		$arguments = array_merge( [ $negated_type ], $arguments );

		$type = 'negate';
		$condition = call_user_func( [$this, 'make'], $arguments );

		return ['type' => $type, 'arguments' => [$condition]];
	}
194789
protected function updateArguments($method, $arguments, $field)
    {
        if ($method == 'widget' && isset($arguments[1]['options']['id'])) {
            $arguments[1]['options']['id'] = MultilingualHelper::getAttributeName($arguments[1]['options']['id'], $field->language);
        }

        if (in_array($method, ['textInput', 'textarea', 'radio', 'checkbox', 'fileInput', 'hiddenInput', 'passwordInput']) && isset($arguments[0]['id'])) {
            $arguments[0]['id'] = MultilingualHelper::getAttributeName($arguments[0]['id'], $field->language);
        }

        if (in_array($method, ['input', 'dropDownList', 'listBox', 'radioList', 'checkboxList']) && isset($arguments[1]['id'])) {
            $arguments[1]['id'] = MultilingualHelper::getAttributeName($arguments[1]['id'], $field->language);
        }

        return $arguments;
    }
459741
protected function __parseLinkJoin($arguments, $method)
	{
		if(!isset($this->operationOption['join']))
		{
			$this->operationOption['join'] = array();
		}
		array_unshift($arguments,$method);
		$this->operationOption['join'][] = $arguments;
	}
250275
protected function invockeAction($method, $arguments)
    {
        try {
            $result = call_user_func_array([$this, $method], $arguments);
        } catch (\Exception $e) {
            $result = $this->createResponse(
                sprintf('%s::%s - %s:%s', get_class($this), $method, get_class($e), $e->getMessage()),
                500
            );
        }
        return $result;
    }
1275725
public function func($method, ...$args)
    {
        $this->method = $method;
        $this->args   = $args;
        return $this;
    }
604527
public function callArray($method, array $args = array())
    {
        //argument 1 must be a string
        Argument::i()->test(1, 'string');
        
        return call_user_func_array(array($this, $method), $args);
    }
858293
public function walk($method, $arg = null, $object = null)
    {
        $result = array();
        foreach ($this->items($object) as $item) {
            $itemResult = $item->$method($arg);
            if ($itemResult === $item) {
                continue;
            }
            if (!is_array($itemResult)) {
                $result[] = $itemResult;
            } elseif (isset($itemResult[0])) {
                array_splice($result, count($result), 0, $itemResult);  
            } elseif (count($itemResult)) {
                $result += $itemResult;
            }
        }
        
        return $result;
    }
1337756
public function resolveStatic(string $name, string $method, ...$args)
    {
        return $this->resolve($name . '::' . $method, ...$args);
    }
117081
protected function proxyCurrentLocaleTranslation($method, array $arguments = [])
    {
        return call_user_func_array(
            [$this->translate($this->getCurrentLocale()), $method],
            $arguments
        );
    }
117307
public function evaluate($method, $arguments)
    {
        $this->validate($method, $arguments);
        return $this->evaluator->evaluate($method, $arguments);
    }
561246
public function find(string $method, $value, array $args = [])
    {
        $isMethod = null;

        $clone = clone $this;
        $clone->elements = array_filter($this->elements, function ($item) use ($method, $value, &$isMethod, $args) {
            return $this->elementMethodCall($method, $item, $isMethod, $args) === $value;
        });

        return $clone;
    }
1136062
public function tryCall($method, $arguments)
    {
        if (isset($this->_hookTrait) && $ret = $this->hook('method-'.$method, $arguments)) {
            return $ret;
        }

        if (isset($this->_appScopeTrait) && isset($this->app->_hookTrait)) {
            array_unshift($arguments, $this);
            if ($ret = $this->app->hook('global-method-'.$method, $arguments)) {
                return $ret;
            }
        }
    }
922120
public function _call($instance, $method, $arguments = [])
    {
        if (method_exists($instance, $method)) {
            return call_user_func_array([$instance, $method], $arguments);
        }
    }
327342
protected function emitBefore($method, array $arguments)
    {
        $event = new BeforeEvent($this, $method, $arguments);
        $this->emit($event, $method);

        if ($event->isPropagationStopped()) {
            return [false, $event->getResult()];
        }

        return [true, $event->getArguments()];
    }