Работаю с библиотекой PhpMorhpy. К ней прилагается следующий пример инициализации:
require_once(dirname(__FILE__) . '/../src/common.php');
// set some options
$opts = array(
// storage type, follow types supported
// PHPMORPHY_STORAGE_FILE - use file operations(fread, fseek) for dictionary access, this is very slow...
// PHPMORPHY_STORAGE_SHM - load dictionary in shared memory(using shmop php extension), this is preferred mode
// PHPMORPHY_STORAGE_MEM - load dict to memory each time when phpMorphy intialized, this useful when shmop ext. not activated. Speed same as for PHPMORPHY_STORAGE_SHM type
'storage' => PHPMORPHY_STORAGE_FILE,
// Extend graminfo for getAllFormsWithGramInfo method call
'with_gramtab' => false,
// Enable prediction by suffix
'predict_by_suffix' => true,
// Enable prediction by prefix
'predict_by_db' => true
);
// Path to directory where dictionaries located
$dir = dirname(__FILE__) . '/phpmorphy-0.3.7/dicts';
// Create descriptor for dictionary located in $dir directory with russian language
$dict_bundle = new phpMorphy_FilesBundle($dir, 'rus');
// Create phpMorphy instance
try {
$morphy = new phpMorphy($dict_bundle, $opts);
} catch(phpMorphy_Exception $e) {
die('Error occured while creating phpMorphy instance: ' . $e->getMessage());
}
Я пишу свой класс, который работает с PhpMorphy. Ранее данную инициализацию я проводила в начале каждой функции класса. Понимаю, что это не правильно, поэтому хочу оптимизировать работу кода. Как правильно инициализировать phpMorphy внутри класса?
Спасибо за помощь!