Как получить параметры при парсинге url (php, mvc, ajax)? Есть файл app.php
Сокращенная версия...class App
{
protected $controller = 'Main_controller';
protected $method = 'index';
protected $params = [];
const SITE_PATH = '/mysiteru/public/';
public function __construct (){
$url = $this->parseUrl();
unset($url[0]);
unset($url[1]); (убираю контроллер и метод базовый)
$this->params = $url ? array_values($url) : [];
// BASE::print_data($this->params);
call_user_func_array([$this->controller,$this->method],$this->params);
}
public function parseUrl (){
if(isset($_GET['url']))
{
return $url=explode('/',filter_var(rtrim($_GET['url'],'/'),FILTER_SANITIZE_URL));
}
}
}
Вызываю
new App();
Теперь суть вопроса...
есть ajax запрос к контроллеру mo_search$('form').on('change','select',function(){
$.ajax({
type: "POST",
url: "/mysiteru/public/mo_search/chained/5/need/",
dataType: "json",
success: function(data, textStatus) {
console.log(data);
}
}); /// КОНЕЦ AJAX
});
В контроллере mo_searchpublic function chained($params)
{
$url=App::parseUrl(); //работает
$url=App::$this->params; // не работает..
}
Как получить массив параметров из App? или заново надо парсить? но ведь контроллер и метод определяется верно... как забрать параметры?

21 Авг 2019 в 07:06
150 +1
0
Ответы
1

Для того чтобы получить параметры из класса App в контроллере, вам необходимо создать объект класса App и вызвать метод parseUrl для получения параметров. Вы можете изменить ваш код контроллера mo_search следующим образом:

public function chained($params)
{
$app = new App();
$url = $app->parseUrl();
$params = $app->params;
}

Таким образом, вы создаете объект класса App и вызываете метод parseUrl() для получения параметров из URL. После этого вы можете использовать свойство params объекта $app для получения массива параметров.

Надеюсь, это поможет вам получить параметры из класса App в вашем контроллере.

20 Апр в 13:07
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 648 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир