JpnForPhp\Inflector\Inflector::getVerb PHP Method

getVerb() public static method

Gets a verb entry from the database using either Kanji, Hiragana or Romaji
public static getVerb ( $verb ) : array
$verb
return array
    public static function getVerb($verb)
    {
        if (!Analyzer::hasJapaneseLetters($verb)) {
            $hepburn = new Kana();
            $verb = $hepburn->transliterate($verb);
        }
        $sql = 'SELECT * FROM verbs WHERE kanji = :kanji OR kana = :kana';
        $uri = 'sqlite:' . __DIR__ . DIRECTORY_SEPARATOR . 'verbs.db';
        $connection = new PDO($uri);
        $connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        $connection->setAttribute(PDO::ATTR_CASE, PDO::CASE_LOWER);
        $statement = $connection->prepare($sql);
        $statement->execute(array(':kanji' => $verb, ':kana' => $verb));
        $results = $statement->fetchAll(PDO::FETCH_ASSOC);
        return $results;
    }

Usage Example

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