Переменная доступа от объема другой функции?

На самом деле то, что делает Google, очень нетривиально и также сначала парадоксально. Они не делают ничего как проверка по сравнению со словарем, а скорее они используют статистику для идентификации "подобных" запросов, которые возвратили больше результатов, чем запрос, точный алгоритм не, конечно, известен.

существуют различные подпроблемы решить здесь как фундаментальное основание для всей статистики Обработки естественного языка, связанной существует у, нужно быть книга: Основа статистической обработки естественного языка .

Конкретно для решения проблемы подобия слова/запроса у меня были хорошие результаты с использованием Расстояние Редактирования , математическая мера строкового подобия, которое работает удивительно хорошо. Я раньше использовал Levenshtein, но другие может стоить изучить.

Soundex - по моему опыту - является дерьмом.

На самом деле эффективно хранение и поиск большого словаря слов с ошибками и наличия sub второе извлечение снова нетривиальны, Ваш лучший выбор состоит в том, чтобы использовать существующее полнотекстовое индексирование и поисковые системы (т.е. не Ваша база данных одна), которых Lucene в настоящее время является одним из лучших и по совпадению портированный ко многим много платформ.

8
задан Carlos Lima 12 November 2009 в 11:56
поделиться

2 ответа

Создайте класс - вы можете объявить $ two как поле экземпляра, которое будет доступно для всех методов экземпляра:

class Blah {
  private $two;
  public function foo($one, $two){
    this->$two = $two;
    bar($one);
  }

  public function bar($one){
    echo $one;
    // How do I access $two from the parent function scope?
    this->$two;
  }
}
5
ответ дан 5 December 2019 в 21:20
поделиться

Грубый способ - экспортировать это в глобальную область, например:

<?php
  function foo($one, $two){
    global $g_two;
    $g_two = $two;
    bar($one);
  }

  function bar($one){
    global $g_two;
    echo $g_two;
    echo $one;
    //How do I access $two from the parent function scope?
  }
?>
2
ответ дан 5 December 2019 в 21:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: