Я пишу метод «поймать все» для моего контроллера для ajax. Это называется «Аякс»: P
Вот как это выглядит сейчас
public function ajax($method = null) {
if ( ! $method OR ! request::is_ajax()) {
return false;
}
if (method_exists(array($this, 'searchModel'), $method)) {
echo $this->searchModel->$method();
}
exit;
}
В случае, если это не очевидно, я хочу, чтобы ajax сначала выручил, если он думает, что это не Ajax-запрос, а затем проверьте мой $this->searchModel
, чтобы увидеть, имеет ли он метод, который был передан как ajax аргументация метода.
Если он находит метод, он должен повторить его возвращаемое значение и затем выйти.
Моя проблема в том, что я не могу method_exists()
найти метод! Я знаю, что он существует ... У меня даже есть жестко закодированные (для целей тестирования) методы, которые я точно знаю.
Это сводит меня с ума, кто-нибудь может сказать мне, что я делаю неправильно?
Спасибо!
P.S. Я использую фреймворк Kohana, но я не думаю, что это должно иметь значение.
UPDATE
Считаете ли вы, что раскрытие имен моих внутренних методов в JavaScript (т. Е. Общедоступных) может быть проблемой безопасности?