Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Запустить метод из другого контроллера


Recommended Posts

Добрый день, мне нужно выполнить метод из другого контроллера.

Тут я вызываю метод и передаю аргументы в массиве:

$data = array(
	'test'  => $test,
	'test1' => $test1
);

$this->load->controller('modul/mymodule/myfunction/, $data');

Уже в другом контроллере пытаюсь обработать, но проблема в том, что массив в аргументе пуст:

public function myfunction ($data = false) {
	if ($data) {
		$test  = $data['test'];
		$test1 = $data['test1'];
	} else {
		return false;
	}
}

Вопрос в том, как принять переданные аргументы?

Змінено користувачем owner25
Надіслати
Поділитися на інших сайтах


13 часов назад, owner25 сказал:

if ($data) { $test = $data['test']; $test1 = $data['test1']; } else { return false; }

если срабатывает if, метод ничего не возвращает.  так и нужно?(сомневаюсь)

Надіслати
Поділитися на інших сайтах

1 час назад, fanatic сказал:

если срабатывает if, метод ничего не возвращает.  так и нужно?(сомневаюсь)

Я для примера написал, там будет другое условие.

Дело в том что условие if вообще не срабатывает, хотя аргумент в метод передается

Змінено користувачем owner25
Надіслати
Поділитися на інших сайтах


10 минут назад, owner25 сказал:

Дело в том что условие if вообще не срабатывает, хотя аргумент в метод передается

Потому что нужно показывать  используемый код
А не... кавычки не там, а в реальности есть, иф, а может там и нет ифа

Надіслати
Поділитися на інших сайтах

15 часов назад, owner25 сказал:

Уже в другом контроллере пытаюсь обработать,

это так вы пытаетесь обработать?

15 часов назад, owner25 сказал:

public function myfunction ($data = false) { if ($data) { $test = $data['test']; $test1 = $data['test1']; } else { return false; } }

или это все же метод вызываемого контроллера?

Надіслати
Поділитися на інших сайтах

есть контроллер

catalog/controller/module/mymodule

<?php

class ControllerModuleMymodule  extends Controller{
    
    public function myfunction($data){
        return $data['a'] + $data['b'];
    }
}

в нужном контроллере  

$arr = array('a'=> 1, 'b'=> 2);

$test = $this->load->controller('module/mymodule/myfunction', $arr);

в переменной $test  будет  3 (результат работы метода  myfunction, контроллера mymodule)

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.