У меня есть следующий код, который я добавил к MY_Controller, что в настоящее время распространяется на все мои контроллеры:Ручка CodeIgniter переназначения с параметрами
public function _remap($method, $params = array())
{//exit($this->router->fetch_class());
if (array_search($method, $this->private_methods) !== false && !$this->logged_in)
{
$this->session->set_flashdata('message', array(
'message' => 'You must login to access the requested area',
'error' => 1
)
);
redirect('/');
}
else if (method_exists($this, $method))
{
$this->$method($params);
}
else
{
redirect('/');
}
}
Проблема создается в том, что вызов $this->$method($params)
является конденсацию Params, чтобы Массив. Поэтому такой метод, как следующие перерывы:
function some_method($param1, $param2, $param3)
Есть ли способ, чтобы разорвать этот массив обратно в отдельные элементы для таких функций, как это?
Это было мое сообщение, и приведенный выше код основан на этом коде. Код в ссылке, на которую вы ссылаетесь, не отделяет параметры, он отправляет их как МАССИВ. –
Вы можете сделать что-то неправильно. Я тестировал и отправляет отдельные параметры. Создайте контроллер 'Example' и проверьте ответ. –