JpnForPhp\Inflector\Inflector::inflect PHP Method

inflect() public static method

Inflects the verb to given forms or all if none input
public static inflect ( $verb, array $forms = [] ) : array
$verb
$forms array
return array
    public static function inflect($verb, $forms = array())
    {
        $result = array();
        if (!$verb) {
            return $result;
        }
        $type = $verb['type'];
        $mapVerbs = self::makeVerbMappings();
        if (!array_key_exists($type, $mapVerbs)) {
            throw new Exception("Unknown verb type : " . $type);
        }
        $mappings = $mapVerbs[$type];
        if (is_string($forms)) {
            return self::inflectForm($verb, $mappings, $forms);
        } elseif (!$forms) {
            $forms = self::$ALL;
        }
        foreach ($forms as $form) {
            $result[$form] = self::inflectForm($verb, $mappings, $form);
        }
        return $result;
    }

Usage Example

Example #1
0
 public function testInflectHanasuNonPastPoliteKanji()
 {
     $verbs = Inflector::getVerb('はなす');
     $results = Inflector::inflect($verbs[0], Inflector::NON_PAST_POLITE);
     $this->assertEquals($results['kanji'], '放します');
 }