Можно ли это сделать с помощью codeigniter? - PullRequest
0 голосов
/ 26 июня 2011

Я занимаюсь разработкой веб-приложения с использованием codeigniter.Теперь, если я хочу загружать переменные из одной функции в другую при вызове функции, тогда возможно ли это?Рассмотрим пример ниже:

Предположим, что внутри одного класса есть две функции следующим образом:

Class Form extends CI_Controller(){

function submit()
{
 $data['title'] = "Website";
 $data['header'] = "Welcome to my website";
 $this->load->vars($data);
 $this->load->view('welcome');
}

function xyz()
{
 $data['footer'] ="Mywebsite 2011 Copyright";
 $this->submit();
}
}

Возможно ли, что когда я вызываю функцию xyz, $ data ['footer']входит в функцию submit ()?Как submit () загружает $ data ['footer'] в $ this- >load-> vars ($ data)?Если нет, то что можно сделать, чтобы включить то же самое?

1 Ответ

1 голос
/ 26 июня 2011

Есть два способа сделать это. Первый - передать данные в качестве параметра, например:

Class Form extends CI_Controller(){

function submit($footer = false)
{
  $data['footer'] = $footer; // set the footer. 
 $data['title'] = "Website";
 $data['header'] = "Welcome to my website";
 $this->load->vars($data);
 $this->load->view('welcome');
}

function xyz()
{
 $data['footer'] ="Mywebsite 2011 Copyright";
 $this->submit($data['footer']);
}
}

Альтернативой является установка данных нижнего колонтитула как переменной класса, которая будет доступна для всех функций в контроллере, например:

Class Form extends CI_Controller(){

var $footer = false; 

function submit()
{
  $data['footer'] = $this->footer; // get the footer. 
 $data['title'] = "Website";
 $data['header'] = "Welcome to my website";
 $this->load->vars($data);
 $this->load->view('welcome');
}

function xyz()
{
 $this->footer = "Mywebsite 2011 Copyright";
 $this->submit($data['footer']);
}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...