S eda1a14b50ee24bcab19b62f40858e76 タイプヒンティング・インジェクション

引数のタイプヒンティングで型を取得して、インジェクションする。

最初にInjectorの設定すればタイプヒンティング入れるだけなので、まぁ便利かも。

methodName = $methodName;
        $this->objects = $objects;
    }
    function inject($injectee){
        $refClass = new ReflectionClass($injectee);
        if (!$refClass->hasMethod($this->methodName)){
            return;
        }
        $method = $refClass->getMethod($this->methodName);
        $params = $method->getParameters();
        $args = array();
        foreach ($params as $param){
            $paramClass = $param->getClass();
            $args[] = $this->getObject($paramClass->getName());
        }
        return $method->invokeArgs($injectee, $args);
    }
}
?>

もしかして

    他の人の「タイプヒンティング・インジェクション」

    S eda1a14b50ee24bcab19b62f40858e76

    無所属ソフトウェアエンジニア

    (1722words)

    最新

      最新エントリ

        関連ツイート